2026.3.19 晚

缓存出库确认后台
This commit is contained in:
1009473166@qq.com
2026-04-27 15:58:34 +08:00
parent 3729d0df5f
commit 52ce9135da
20 changed files with 320 additions and 162 deletions

View File

@@ -659,7 +659,7 @@ public class ToErpServiceImpl implements IToErpService {
callBackErp.setCcompany(inStockin.getCompanyShortName()); // 公司简称 callBackErp.setCcompany(inStockin.getCompanyShortName()); // 公司简称
callBackErp.setCcode(inStockin.getStockinId()); // wms 单据号 callBackErp.setCcode(inStockin.getStockinId()); // wms 单据号
callBackErp.setDdate(inStockin.getFinishDate()); // 操作日期 callBackErp.setDdate(inStockin.getFinishDate()); // 操作日期
callBackErp.setCintype("1"); // 业务类型 callBackErp.setCintype(inStockin.getInType()); // 业务类型
callBackErp.setCvencode(inStockin.getSupplierNo()); // 供应商编码 callBackErp.setCvencode(inStockin.getSupplierNo()); // 供应商编码
callBackErp.setCvenname(inStockin.getSupplierNo()); // 供应商名称 callBackErp.setCvenname(inStockin.getSupplierNo()); // 供应商名称
callBackErp.setCoptname(inStockin.getCreateManId()); // 操作人 callBackErp.setCoptname(inStockin.getCreateManId()); // 操作人
@@ -720,7 +720,7 @@ public class ToErpServiceImpl implements IToErpService {
String sendMsg = JSONUtil.toJsonStr(callBackErp); String sendMsg = JSONUtil.toJsonStr(callBackErp);
try { try {
//todo 发送给erp 成功失败改状态 //todo 发送给erp 成功失败改状态
RequestLog requestLog = requestLogService.getRequestLog("http://192.168.188.235/app1/api?type=1&key=1", JSONUtil.toJsonStr(callBackErp), "入库回传", "wms", "erp"); RequestLog requestLog = requestLogService.getRequestLog("http://192.168.188.235/app1/api?type=1&key=1", JSONUtil.toJsonStr(callBackErp), "入库回传", "wms", "erp", inStockin.getInType(), inStockin.getAccountSetNo());
if ("1".equals(requestLog.getIsSuccessful())) { if ("1".equals(requestLog.getIsSuccessful())) {
inStockin.setSendStatus("1"); inStockin.setSendStatus("1");
inStockin.setSendTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); inStockin.setSendTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
@@ -728,6 +728,8 @@ public class ToErpServiceImpl implements IToErpService {
inStockinDetailParam.setSendStatus("1"); inStockinDetailParam.setSendStatus("1");
inStockinDetailParam.setSendTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); inStockinDetailParam.setSendTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
inStockinDetailParam.setMsg("成功"); inStockinDetailParam.setMsg("成功");
inStockinDetailBackService.insertInStockInDetailBackFinish(inStockinDetails);
inStockinDetailBackService.deleteInStockInDetailList(inStockinDetails);
} else { } else {
inStockin.setSendStatus("2"); inStockin.setSendStatus("2");
inStockin.setSendTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); inStockin.setSendTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
@@ -739,6 +741,7 @@ public class ToErpServiceImpl implements IToErpService {
inStockinBackService.updateInStockinBack(inStockin); inStockinBackService.updateInStockinBack(inStockin);
inStockinDetailBackService.updateInStockinDetailBack(inStockinDetailParam); inStockinDetailBackService.updateInStockinDetailBack(inStockinDetailParam);
} catch (Exception e) { } catch (Exception e) {
inStockin.setSendStatus("2"); inStockin.setSendStatus("2");
inStockin.setSendTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); inStockin.setSendTime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
@@ -752,6 +755,11 @@ public class ToErpServiceImpl implements IToErpService {
} }
public static void main(String[] args) {
System.out.println(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
}
@Override @Override
public void callbackDeliveryOutNoticeNew() { public void callbackDeliveryOutNoticeNew() {
OutStockoutBack outStockoutBack = outStockoutBackService.selelctTopOutStockout(); OutStockoutBack outStockoutBack = outStockoutBackService.selelctTopOutStockout();

View File

@@ -44,7 +44,7 @@ public class ToWcsServiceImpl implements IToWcsService {
@Override @Override
eduled(fixedDelay=1500) @Scheduled(fixedDelay=1500)
public void pushOutMydoJob() { public void pushOutMydoJob() {
//查询所有未推送的料箱出库作业 //查询所有未推送的料箱出库作业
MydoJob mydoJobParam = new MydoJob(); MydoJob mydoJobParam = new MydoJob();

View File

@@ -4,18 +4,18 @@ import java.util.List;
import com.ruoyi.in.stockin.domain.InStockin; import com.ruoyi.in.stockin.domain.InStockin;
import com.ruoyi.in.stockindeatilback.domain.InStockinDetailBack; import com.ruoyi.in.stockindeatilback.domain.InStockinDetailBack;
import org.apache.ibatis.annotations.Param;
/** /**
* 入库单据子信息Mapper接口 * 入库单据子信息Mapper接口
* *
* @author ruoyi * @author ruoyi
* @date 2026-01-27 * @date 2026-01-27
*/ */
public interface InStockinDetailBackMapper public interface InStockinDetailBackMapper {
{
/** /**
* 查询入库单据子信息 * 查询入库单据子信息
* *
* @param stockinDetailId 入库单据子信息主键 * @param stockinDetailId 入库单据子信息主键
* @return 入库单据子信息 * @return 入库单据子信息
*/ */
@@ -23,7 +23,7 @@ public interface InStockinDetailBackMapper
/** /**
* 查询入库单据子信息列表 * 查询入库单据子信息列表
* *
* @param inStockinDetailBack 入库单据子信息 * @param inStockinDetailBack 入库单据子信息
* @return 入库单据子信息集合 * @return 入库单据子信息集合
*/ */
@@ -31,16 +31,17 @@ public interface InStockinDetailBackMapper
/** /**
* 新增入库单据子信息 * 新增入库单据子信息
* *
* @param inStockinDetailBack 入库单据子信息 * @param inStockinDetailBack 入库单据子信息
* @return 结果 * @return 结果
*/ */
public int insertInStockinDetailBack(InStockinDetailBack inStockinDetailBack); public int insertInStockinDetailBack(InStockinDetailBack inStockinDetailBack);
public int insertInStockinDetailBackById(InStockin inStockin); public int insertInStockinDetailBackById(InStockin inStockin);
/** /**
* 修改入库单据子信息 * 修改入库单据子信息
* *
* @param inStockinDetailBack 入库单据子信息 * @param inStockinDetailBack 入库单据子信息
* @return 结果 * @return 结果
*/ */
@@ -48,7 +49,7 @@ public interface InStockinDetailBackMapper
/** /**
* 删除入库单据子信息 * 删除入库单据子信息
* *
* @param stockinDetailId 入库单据子信息主键 * @param stockinDetailId 入库单据子信息主键
* @return 结果 * @return 结果
*/ */
@@ -56,9 +57,13 @@ public interface InStockinDetailBackMapper
/** /**
* 批量删除入库单据子信息 * 批量删除入库单据子信息
* *
* @param stockinDetailIds 需要删除的数据主键集合 * @param stockinDetailIds 需要删除的数据主键集合
* @return 结果 * @return 结果
*/ */
public int deleteInStockinDetailBackByStockinDetailIds(String[] stockinDetailIds); public int deleteInStockinDetailBackByStockinDetailIds(String[] stockinDetailIds);
void insertInStockInDetailBackFinish(@Param("list") List<InStockinDetailBack> inStockinDetailParam);
void deleteInStockInDetailList(@Param("idList") List<InStockinDetailBack> inStockinDetails);
} }

View File

@@ -58,4 +58,8 @@ public interface IInStockinDetailBackService
* @return 结果 * @return 结果
*/ */
public int deleteInStockinDetailBackByStockinDetailId(String stockinDetailId); public int deleteInStockinDetailBackByStockinDetailId(String stockinDetailId);
void insertInStockInDetailBackFinish(List<InStockinDetailBack> inStockinDetailParam);
void deleteInStockInDetailList(List<InStockinDetailBack> inStockinDetails);
} }

View File

@@ -90,4 +90,14 @@ public class InStockinDetailBackServiceImpl implements IInStockinDetailBackServi
{ {
return inStockinDetailBackMapper.deleteInStockinDetailBackByStockinDetailId(stockinDetailId); return inStockinDetailBackMapper.deleteInStockinDetailBackByStockinDetailId(stockinDetailId);
} }
@Override
public void insertInStockInDetailBackFinish(List<InStockinDetailBack> inStockinDetailParam) {
inStockinDetailBackMapper.insertInStockInDetailBackFinish(inStockinDetailParam);
}
@Override
public void deleteInStockInDetailList(List<InStockinDetailBack> inStockinDetails) {
inStockinDetailBackMapper.deleteInStockInDetailList(inStockinDetails);
}
} }

View File

@@ -1,6 +1,7 @@
package com.ruoyi.in.stockindetail.mapper; package com.ruoyi.in.stockindetail.mapper;
import com.ruoyi.in.stockin.domain.InStockin; import com.ruoyi.in.stockin.domain.InStockin;
import com.ruoyi.in.stockindeatilback.domain.InStockinDetailBack;
import com.ruoyi.in.stockindetail.domain.InStockinDetail; import com.ruoyi.in.stockindetail.domain.InStockinDetail;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@@ -69,4 +70,5 @@ public interface InStockinDetailMapper
void deleteInStockinDetailByStockinGuid(String stockinGuid); void deleteInStockinDetailByStockinGuid(String stockinGuid);
InStockinDetail selectStockinByDetailById(InStockinDetail inStockinDetail); InStockinDetail selectStockinByDetailById(InStockinDetail inStockinDetail);
} }

View File

@@ -2,6 +2,7 @@ package com.ruoyi.in.stockindetail.service;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.in.stockin.domain.InStockin; import com.ruoyi.in.stockin.domain.InStockin;
import com.ruoyi.in.stockindeatilback.domain.InStockinDetailBack;
import com.ruoyi.in.stockindetail.domain.InStockinDetail; import com.ruoyi.in.stockindetail.domain.InStockinDetail;
import java.util.List; import java.util.List;
@@ -81,4 +82,6 @@ public interface IInStockinDetailService
public InStockinDetail selectStockinByDetailById(InStockinDetail inStockinDetail); public InStockinDetail selectStockinByDetailById(InStockinDetail inStockinDetail);
} }

View File

@@ -3,6 +3,7 @@ package com.ruoyi.in.stockindetail.service.impl;
import com.ruoyi.common.annotation.DataScope; import com.ruoyi.common.annotation.DataScope;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.in.stockin.domain.InStockin; import com.ruoyi.in.stockin.domain.InStockin;
import com.ruoyi.in.stockindeatilback.domain.InStockinDetailBack;
import com.ruoyi.in.stockindetail.domain.InStockinDetail; import com.ruoyi.in.stockindetail.domain.InStockinDetail;
import com.ruoyi.in.stockindetail.mapper.InStockinDetailMapper; import com.ruoyi.in.stockindetail.mapper.InStockinDetailMapper;
import com.ruoyi.in.stockindetail.service.IInStockinDetailService; import com.ruoyi.in.stockindetail.service.IInStockinDetailService;
@@ -127,4 +128,6 @@ public class InStockinDetailServiceImpl implements IInStockinDetailService
return inStockinDetailMapper.selectStockinByDetailById(inStockinDetail); return inStockinDetailMapper.selectStockinByDetailById(inStockinDetail);
} }
} }

View File

@@ -69,6 +69,9 @@ public interface IRequestLogService
* @return * @return
*/ */
public RequestLog getRequestLog(String url, String param, String remark,String source,String target); public RequestLog getRequestLog(String url, String param, String remark,String source,String target);
public RequestLog getRequestLog(String url, String param, String remark,String source,String target,String billType,String ciccid);
/** /**
* 接收接口记录 * 接收接口记录
* *

View File

@@ -3,6 +3,7 @@ package com.ruoyi.log.service.impl;
import cn.hutool.core.convert.Convert; import cn.hutool.core.convert.Convert;
import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpUtil; import cn.hutool.http.HttpUtil;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.core.domain.AjaxResult;
@@ -24,8 +25,7 @@ import java.util.List;
*/ */
@Service @Service
@Slf4j @Slf4j
public class RequestLogServiceImpl implements IRequestLogService public class RequestLogServiceImpl implements IRequestLogService {
{
@Autowired @Autowired
private RequestLogMapper requestLogMapper; private RequestLogMapper requestLogMapper;
@@ -36,8 +36,7 @@ public class RequestLogServiceImpl implements IRequestLogService
* @return 接口记录 * @return 接口记录
*/ */
@Override @Override
public RequestLog selectRequestLogByRequestId(Long requestId) public RequestLog selectRequestLogByRequestId(Long requestId) {
{
return requestLogMapper.selectRequestLogByRequestId(requestId); return requestLogMapper.selectRequestLogByRequestId(requestId);
} }
@@ -48,8 +47,7 @@ public class RequestLogServiceImpl implements IRequestLogService
* @return 接口记录 * @return 接口记录
*/ */
@Override @Override
public List<RequestLog> selectRequestLogList(RequestLog requestLog) public List<RequestLog> selectRequestLogList(RequestLog requestLog) {
{
return requestLogMapper.selectRequestLogList(requestLog); return requestLogMapper.selectRequestLogList(requestLog);
} }
@@ -60,10 +58,9 @@ public class RequestLogServiceImpl implements IRequestLogService
* @return 结果 * @return 结果
*/ */
@Override @Override
public int insertRequestLog(RequestLog requestLog) public int insertRequestLog(RequestLog requestLog) {
{
return requestLogMapper.insertRequestLog(requestLog); return requestLogMapper.insertRequestLog(requestLog);
} }
@@ -74,8 +71,7 @@ public class RequestLogServiceImpl implements IRequestLogService
* @return 结果 * @return 结果
*/ */
@Override @Override
public int updateRequestLog(RequestLog requestLog) public int updateRequestLog(RequestLog requestLog) {
{
return requestLogMapper.updateRequestLog(requestLog); return requestLogMapper.updateRequestLog(requestLog);
} }
@@ -86,8 +82,7 @@ public class RequestLogServiceImpl implements IRequestLogService
* @return 结果 * @return 结果
*/ */
@Override @Override
public int deleteRequestLogByRequestIds(Long[] requestIds) public int deleteRequestLogByRequestIds(Long[] requestIds) {
{
return requestLogMapper.deleteRequestLogByRequestIds(requestIds); return requestLogMapper.deleteRequestLogByRequestIds(requestIds);
} }
@@ -98,8 +93,7 @@ public class RequestLogServiceImpl implements IRequestLogService
* @return 结果 * @return 结果
*/ */
@Override @Override
public int deleteRequestLogByRequestId(Long requestId) public int deleteRequestLogByRequestId(Long requestId) {
{
return requestLogMapper.deleteRequestLogByRequestId(requestId); return requestLogMapper.deleteRequestLogByRequestId(requestId);
} }
@@ -111,7 +105,7 @@ public class RequestLogServiceImpl implements IRequestLogService
* @return requestLog * @return requestLog
*/ */
@Override @Override
public RequestLog getRequestLog(String url, String param, String remark,String source,String target) { public RequestLog getRequestLog(String url, String param, String remark, String source, String target) {
RequestLog requestLog = new RequestLog(); RequestLog requestLog = new RequestLog();
requestLog.setRequestTime(DateUtil.formatDateTime(new Date())); requestLog.setRequestTime(DateUtil.formatDateTime(new Date()));
requestLog.setSourceSystem(source); requestLog.setSourceSystem(source);
@@ -122,7 +116,9 @@ public class RequestLogServiceImpl implements IRequestLogService
requestLog.setRequestBody(param); requestLog.setRequestBody(param);
requestLog.setRequestUrl(url); requestLog.setRequestUrl(url);
try { try {
String resStr = HttpUtil.post(url, param); String resStr = HttpRequest.post(url).form("datajson", param).form("ibilltype", "").form("cacc_id", "").contentType("application/x-www-from-urlencoded").
timeout(2000).execute().body();
// String resStr = HttpUtil.post(url, param);
requestLog.setResponseBody(resStr); requestLog.setResponseBody(resStr);
// 判断resStr的状态码,如果不是200抛出异常让catch捕获 // 判断resStr的状态码,如果不是200抛出异常让catch捕获
if (!JSONUtil.isJsonObj(resStr)) { if (!JSONUtil.isJsonObj(resStr)) {
@@ -147,13 +143,54 @@ public class RequestLogServiceImpl implements IRequestLogService
return requestLog; return requestLog;
} }
@Override
public RequestLog getRequestLog(String url, String param, String remark, String source, String target, String billType, String ciccid) {
RequestLog requestLog = new RequestLog();
requestLog.setRequestTime(DateUtil.formatDateTime(new Date()));
requestLog.setSourceSystem(source);
requestLog.setTargetSystem(target);
requestLog.setEndpoint(remark);
requestLog.setRequestMethod("post");
requestLog.setRequestHeaders(null);
requestLog.setRequestBody("datajson:" + param + ",ibilltype:" + billType + ",cacc_id:" + ciccid);
requestLog.setRequestUrl(url);
try {
String resStr = HttpRequest.post(url).form("datajson", param).form("ibilltype", billType).form("cacc_id", ciccid).contentType("application/x-www-from-urlencoded").
timeout(2000).execute().body();
// String resStr = HttpUtil.post(url, param);
requestLog.setResponseBody(resStr);
// 判断resStr的状态码,如果不是200抛出异常让catch捕获
if (!JSONUtil.isJsonObj(resStr)) {
throw new RuntimeException("返回结果不是有效的JSON对象");
}
cn.hutool.json.JSONObject jsonObject = JSONUtil.parseObj(resStr);
Object codeObj = jsonObject.get("code");
if (codeObj == null || !codeObj.toString().equals("200")) {
throw new RuntimeException("请求失败,状态码: " + (codeObj != null ? codeObj.toString() : "null"));
}
requestLog.setResponseTime(DateUtil.formatDateTime(new Date()));
requestLog.setResponseStatus("1");
requestLog.setDuration(Convert.toStr(DateUtil.between(Convert.toDate(requestLog.getRequestTime()), Convert.toDate(requestLog.getResponseTime()), DateUnit.MS)));
requestLog.setIsSuccessful("1");
} catch (Exception e) {
requestLog.setErrorDetails(e.getMessage());
requestLog.setIsSuccessful("0");
requestLog.setResponseStatus("0");
} finally {
insertRequestLog(requestLog);
}
return requestLog;
}
/** /**
* 插入请求日志 * 插入请求日志
* *
* @return requestLog * @return requestLog
*/ */
@Override @Override
public RequestLog getRequestLog(String param, String remark,AjaxResult ajaxResult) { public RequestLog getRequestLog(String param, String remark, AjaxResult ajaxResult) {
RequestLog requestLog = new RequestLog(); RequestLog requestLog = new RequestLog();
requestLog.setRequestTime(DateUtil.formatDateTime(new Date())); requestLog.setRequestTime(DateUtil.formatDateTime(new Date()));
requestLog.setRequestBody(param); requestLog.setRequestBody(param);
@@ -164,9 +201,9 @@ public class RequestLogServiceImpl implements IRequestLogService
requestLog.setResponseTime(DateUtil.formatDateTime(new Date())); requestLog.setResponseTime(DateUtil.formatDateTime(new Date()));
requestLog.setDuration(Convert.toStr(DateUtil.between(Convert.toDate(requestLog.getRequestTime()), Convert.toDate(requestLog.getResponseTime()), DateUnit.MS))); requestLog.setDuration(Convert.toStr(DateUtil.between(Convert.toDate(requestLog.getRequestTime()), Convert.toDate(requestLog.getResponseTime()), DateUnit.MS)));
requestLog.setResponseStatus("1"); requestLog.setResponseStatus("1");
if (ajaxResult.isSuccess()){ if (ajaxResult.isSuccess()) {
requestLog.setIsSuccessful("1"); requestLog.setIsSuccessful("1");
}else { } else {
requestLog.setIsSuccessful("0"); requestLog.setIsSuccessful("0");
} }
requestLog.setResponseBody(Convert.toStr(ajaxResult.get("msg"))); requestLog.setResponseBody(Convert.toStr(ajaxResult.get("msg")));

View File

@@ -6,9 +6,9 @@ spring:
druid: druid:
# 主库数据源 # 主库数据源
master: master:
url: jdbc:sqlserver://192.168.188.236:1433;databaseName=FT546-wms;encrypt=true;trustServerCertificate=true; url: jdbc:sqlserver://127.0.0.1:1433;databaseName=FT546-wms;encrypt=true;trustServerCertificate=true;
username: sa username: sa
password: Flrd0914. password: 123456
# 从库数据源 # 从库数据源
slave: slave:
# 从数据源开关/默认关闭 # 从数据源开关/默认关闭

View File

@@ -71,7 +71,7 @@ spring:
# redis 配置 # redis 配置
redis: redis:
# 地址 # 地址
host: 192.168.188.236 host: 127.0.0.1
# 端口,默认为6379 # 端口,默认为6379
port: 6379 port: 6379
# 数据库索引 # 数据库索引

View File

@@ -27,6 +27,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="sendStatus" column="send_status"/> <result property="sendStatus" column="send_status"/>
<result property="sendTime" column="send_time"/> <result property="sendTime" column="send_time"/>
<result property="msg" column="msg"/> <result property="msg" column="msg"/>
<result property="msg" column="msg"/>
<result property="msg" column="msg"/>
</resultMap> </resultMap>
<sql id="selectInStockinBackVo"> <sql id="selectInStockinBackVo">

View File

@@ -274,10 +274,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
delete from in_stockin_detail_back where stockin_detail_id = #{stockinDetailId} delete from in_stockin_detail_back where stockin_detail_id = #{stockinDetailId}
</delete> </delete>
<insert id="insertInStockInDetailBackFinish" parameterType="java.util.List">
INSERT INTO in_stockin_detail_back_finish
<foreach collection="list" item="item" separator="UNION ALL">
SELECT * FROM in_stockin_detail_back
WHERE stockin_detail_id = #{item.stockinDetailId}
</foreach>
</insert>
<delete id="deleteInStockinDetailBackByStockinDetailIds" parameterType="String"> <delete id="deleteInStockinDetailBackByStockinDetailIds" parameterType="String">
delete from in_stockin_detail_back where stockin_detail_id in delete from in_stockin_detail_back where stockin_detail_id in
<foreach item="stockinDetailId" collection="array" open="(" separator="," close=")"> <foreach item="stockinDetailId" collection="array" open="(" separator="," close=")">
#{stockinDetailId} #{stockinDetailId}
</foreach> </foreach>
</delete> </delete>
<delete id="deleteInStockInDetailList">
DELETE FROM in_stockin_detail
WHERE stockin_detail_id IN
<foreach collection="idList" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper> </mapper>

View File

@@ -343,4 +343,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</where> </where>
order by ist.create_date desc order by ist.create_date desc
</select> </select>
</mapper> </mapper>

View File

@@ -62,7 +62,7 @@ export function getOutStockoutDetail(query) {
export function autoAllot(data) { export function autoAllot(data) {
return request({ return request({
url: '/out/outStockout/autoAllot', url: '/out/outStockout/autoAllot',
method: 'get', method: 'post',
params: data params: data
}) })
} }

View File

@@ -21,32 +21,32 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<!-- <el-form-item label="单据来源" prop="stockSource">&lt;!&ndash;单据来源&ndash;&gt;--> <!-- <el-form-item label="单据来源" prop="stockSource">&lt;!&ndash;单据来源&ndash;&gt;-->
<!-- <el-select v-model="queryParams.stockSource" placeholder="请选择单据来源" clearable>--> <!-- <el-select v-model="queryParams.stockSource" placeholder="请选择单据来源" clearable>-->
<!-- <el-option--> <!-- <el-option-->
<!-- v-for="dict in dict.type.bill_resource"--> <!-- v-for="dict in dict.type.bill_resource"-->
<!-- :key="dict.value"--> <!-- :key="dict.value"-->
<!-- :label="dict.label"--> <!-- :label="dict.label"-->
<!-- :value="dict.value"--> <!-- :value="dict.value"-->
<!-- />--> <!-- />-->
<!-- </el-select>--> <!-- </el-select>-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<el-form-item label="项目号" prop="departmentNo"> <el-form-item label="项目号" prop="departmentNo">
<el-input <el-input
v-model="queryParams.departmentNo" v-model="queryParams.departmentNo"
placeholder="请输入项目号" placeholder="请输入项目号"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<!-- <el-form-item label="合同号" prop="spare1">--> <!-- <el-form-item label="合同号" prop="spare1">-->
<!-- <el-input--> <!-- <el-input-->
<!-- v-model="queryParams.spare1"--> <!-- v-model="queryParams.spare1"-->
<!-- placeholder="请输入合同号"--> <!-- placeholder="请输入合同号"-->
<!-- clearable--> <!-- clearable-->
<!-- @keyup.enter.native="handleQuery"--> <!-- @keyup.enter.native="handleQuery"-->
<!-- />--> <!-- />-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<el-form-item label="erp单据号" prop="erpBill"> <el-form-item label="erp单据号" prop="erpBill">
<el-input <el-input
v-model="queryParams.erpBill" v-model="queryParams.erpBill"
@@ -73,14 +73,14 @@
/> />
</el-form-item> </el-form-item>
<!-- <el-form-item label="批次号" prop="lotNo">&lt;!&ndash;品名&ndash;&gt;--> <el-form-item label="组件号" prop="cargoNo"><!--品名-->
<!-- <el-input--> <el-input
<!-- v-model="queryParams.lotNo"--> v-model="queryParams.cargoNo"
<!-- placeholder="请输入批次号"--> placeholder="请输入组件号"
<!-- clearable--> clearable
<!-- @keyup.enter.native="handleQuery"--> @keyup.enter.native="handleQuery"
<!-- />--> />
<!-- </el-form-item>--> </el-form-item>
<el-form-item :label="'单据时间'" prop="dateRange"> <el-form-item :label="'单据时间'" prop="dateRange">
<el-date-picker <el-date-picker
@@ -160,18 +160,18 @@
>单据确认<!--单据确认--> >单据确认<!--单据确认-->
</el-button> </el-button>
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="info" type="info"
plain plain
icon="el-icon-download" icon="el-icon-download"
size="mini" size="mini"
:disabled="detailMultiple" :disabled="detailMultiple"
@click="handleBarcodePrinting" @click="handleBarcodePrinting"
v-hasPermi="['in:stockIn:barcodePrinting']" v-hasPermi="['in:stockIn:barcodePrinting']"
>打印条码<!--打印条码--> >打印条码<!--打印条码-->
</el-button> </el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
@@ -202,12 +202,12 @@
<el-table-column label="制单人" align="left" prop="createManId" width="140"/><!--创建人--> <el-table-column label="制单人" align="left" prop="createManId" width="140"/><!--创建人-->
<el-table-column label="项目号" align="left" prop="departmentNo" width="140"/><!--部门--> <el-table-column label="项目号" align="left" prop="departmentNo" width="140"/><!--部门-->
<el-table-column label="单据时间" align="left" prop="createDate" width="160" sortable/><!--建立时间--> <el-table-column label="单据时间" align="left" prop="createDate" width="160" sortable/><!--建立时间-->
<el-table-column label="确认时间" align="left" prop="finishDate" width="160" sortable/><!--完成日期--> <el-table-column label="确认时间" align="left" prop="finishDate" width="160" sortable/><!--完成日期-->
<el-table-column label="合同号" align="left" prop="spare1" width="140" sortable/><!--完成日期--> <el-table-column label="合同号" align="left" prop="spare1" width="140" sortable/><!--完成日期-->
<el-table-column label="销售单号" align="left" prop="spare2" width="140" sortable/><!--完成日期--> <el-table-column label="销售单号" align="left" prop="spare2" width="140" sortable/><!--完成日期-->
<el-table-column label="审核时间" align="left" prop="spare3" width="160" sortable/><!--完成日期--> <el-table-column label="审核时间" align="left" prop="spare3" width="160" sortable/><!--完成日期-->
<el-table-column label="审核人" align="left" prop="spare4" /><!--完成日期--> <el-table-column label="审核人" align="left" prop="spare4"/><!--完成日期-->
<el-table-column label="备注" align="left" prop="spare5" /><!--完成日期--> <el-table-column label="备注" align="left" prop="spare5"/><!--完成日期-->
</el-table> </el-table>
<pagination <pagination
@@ -220,23 +220,24 @@
<el-table v-loading="detailLoading" :data="stockInDetailList" @selection-change="handleDetailSelectionChange"> <el-table v-loading="detailLoading" :data="stockInDetailList" @selection-change="handleDetailSelectionChange">
<el-table-column type="selection" width="55" align="center"/> <el-table-column type="selection" width="55" align="center"/>
<el-table-column label="子单ID" align="left" prop="stockinDetailId" width="160" /><!--子单ID--> <el-table-column label="子单ID" align="left" prop="stockinDetailId" width="160"/><!--子单ID-->
<el-table-column label="主单ID" align="left" prop="stockinId" width="160"/><!--主单ID--> <el-table-column label="主单ID" align="left" prop="stockinId" width="160"/><!--主单ID-->
<el-table-column label="存货编码" align="left" prop="productId" /><!--品号--> <el-table-column label="存货编码" align="left" prop="productId"/><!--品号-->
<el-table-column label="存货名称" align="left" prop="productName" width="160"/><!--品号--> <el-table-column label="存货名称" align="left" prop="productName" width="160"/><!--品号-->
<el-table-column label="批号" align="left" prop="lotNo" /><!--批号--> <el-table-column label="批号" align="left" prop="lotNo"/><!--批号-->
<el-table-column label="单位" align="left" prop="unit"/><!--机型--> <el-table-column label="单位" align="left" prop="unit"/><!--机型-->
<el-table-column label="规格型号" align="left" prop="spec"/><!--规格--> <el-table-column label="规格型号" align="left" prop="spec"/><!--规格-->
<el-table-column label="层级关系" align="left" prop="spare1"/><!--型号--> <el-table-column label="层级关系" align="left" prop="spare1"/><!--型号-->
<el-table-column label="上层物料" align="left" prop="spare2"/><!--净重--> <el-table-column label="上层物料" align="left" prop="spare2"/><!--净重-->
<el-table-column label="顶层物料" align="left" prop="spare3"/><!--颜色--> <el-table-column label="顶层物料" align="left" prop="spare3"/><!--颜色-->
<el-table-column label="计划数量" align="left" prop="quantity" /><!--计划数量--> <el-table-column label="计划数量" align="left" prop="quantity"/><!--计划数量-->
<el-table-column label="扫码数量" align="left" prop="scanNum" /><!--扫码数量--> <el-table-column label="扫码数量" align="left" prop="scanNum"/><!--扫码数量-->
<el-table-column label="实际数量" align="left" prop="assignNum" /><!--实际数量--> <el-table-column label="实际数量" align="left" prop="assignNum"/><!--实际数量-->
<el-table-column label="货位号" align="left" prop="assignNum" /><!--实际数量--> <el-table-column label="货位号" align="left" prop="spare9"/><!--实际数量-->
<el-table-column label="托盘号" align="left" prop="assignNum" /><!--实际数量--> <el-table-column label="托盘号" align="left" prop="spare8"/><!--实际数量-->
<el-table-column label="条码号" align="left" prop="assignNum" /><!--实际数量--> <el-table-column label="条码号" align="left" prop="barCode"/><!--实际数量-->
<el-table-column label="采购订单" align="left" prop="assignNum" /><!--实际数量--> <el-table-column label="组件号" align="left" prop="cargoNo"/><!--组件号-->
<el-table-column label="项目号" align="left" prop="spare4"/><!--项目号-->
</el-table> </el-table>
<pagination <pagination
@@ -341,7 +342,8 @@ export default {
spare2: null, spare2: null,
spare4: null, spare4: null,
spare3: null, spare3: null,
spare5: null spare5: null,
cargoNo: null
}, },
queryDetailParams: { queryDetailParams: {
pageNum: 1, pageNum: 1,

View File

@@ -25,9 +25,9 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<el-form-item :label="'erp单据号'" prop="erpStockOutId"> <!-- 出库单编号 --> <el-form-item :label="'erp单据号'" prop="erpStockoutId"> <!-- 出库单编号 -->
<el-input <el-input
v-model="queryParams.erpStockOutId" v-model="queryParams.erpStockoutId"
:placeholder="'请输入出库单编号'" :placeholder="'请输入出库单编号'"
clearable clearable
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
@@ -43,6 +43,19 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item :label="'出库方向'" prop="spare8"> <!-- 出库方向 -->
<el-select v-model="queryParams.spare8" :placeholder="'请选择出库方向'" clearable>
<el-option
v-for="dict in dict.type.out_location"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item :label="'单据状态'" prop="status"> <!-- 单据状态 --> <el-form-item :label="'单据状态'" prop="status"> <!-- 单据状态 -->
<el-select v-model="queryParams.status" :placeholder="'请选择单据状态'" clearable> <el-select v-model="queryParams.status" :placeholder="'请选择单据状态'" clearable>
<el-option <el-option
@@ -153,7 +166,7 @@
<el-table v-loading="loading" :data="outStockoutList" @selection-change="handleSelectionChange" @row-click="handleRowClick" max-height="400"> <el-table v-loading="loading" :data="outStockoutList" @selection-change="handleSelectionChange" @row-click="handleRowClick" max-height="400">
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column :label="'出库单编号'" align="left" prop="stockoutId" /> <el-table-column :label="'出库单编号'" align="left" prop="stockoutId" />
<el-table-column :label="'erp单据号'" align="left" prop="erpStockOutId" /> <el-table-column :label="'erp单据号'" align="left" prop="erpStockoutId" />
<el-table-column :label="'出库类型'" align="left" prop="outType"> <el-table-column :label="'出库类型'" align="left" prop="outType">
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.out_bill_type" :value="scope.row.outType"/> <dict-tag :options="dict.type.out_bill_type" :value="scope.row.outType"/>
@@ -184,10 +197,16 @@
<!-- <el-table-column :label="'销售订单号'" align="left" prop="spare2" />--> <!-- <el-table-column :label="'销售订单号'" align="left" prop="spare2" />-->
<el-table-column :label="'审核时间'" align="left" prop="spare3" /> <el-table-column :label="'审核时间'" align="left" prop="spare3" />
<el-table-column :label="'审核人'" align="left" prop="spare4" /> <el-table-column :label="'审核人'" align="left" prop="spare4" />
<el-table-column :label="'出库方向'" align="left" prop="spare8" >
<template slot-scope="scope">
<dict-tag :options="dict.type.out_location" :value="scope.row.spare8"/>
</template>
</el-table-column>
<el-table-column :label="'创建时间'" align="left" prop="createDate" width="160" sortable/> <el-table-column :label="'创建时间'" align="left" prop="createDate" width="160" sortable/>
<el-table-column :label="'开始时间'" align="left" prop="startDate" width="160" sortable/> <el-table-column :label="'开始时间'" align="left" prop="startDate" width="160" sortable/>
<el-table-column :label="'确认时间'" align="left" prop="finishDate" width="160" sortable/> <el-table-column :label="'确认时间'" align="left" prop="finishDate" width="160" sortable/>
<el-table-column :label="'备注'" align="left" prop="spare5" /> <el-table-column :label="'备注'" align="left" prop="spare5" />
</el-table> </el-table>
<pagination <pagination
@@ -356,7 +375,7 @@ import {listWarehouse} from "@/api/bas/warehouse";
export default { export default {
name: "OutStockWithDetail", name: "OutStockWithDetail",
dicts: ['out_bill_type', 'out_bill_status', 'out_method', 'bill_resource'], dicts: ['out_bill_type', 'out_bill_status', 'out_method', 'bill_resource','out_location'],
data() { data() {
return { return {
// 遮罩层 // 遮罩层
@@ -413,14 +432,15 @@ export default {
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
stockoutId: null, stockoutId: null,
erpStockOutId:null, erpStockoutId:null,
outType: null, outType: null,
customerNo: null, customerNo: null,
customerName: null, customerName: null,
productName: null, productName: null,
startDate: null, startDate: null,
finishDate: null, finishDate: null,
status: null status: null,
spare8:null
}, },
// 子表分页参数 // 子表分页参数
detailQueryParams: { detailQueryParams: {
@@ -605,8 +625,14 @@ export default {
this.$modal.msgError('请先审核出库单') this.$modal.msgError('请先审核出库单')
return return
} }
if (this.queryParams.spare8==''||this.queryParams.spare8==null){
this.$modal.msgError('请选择出库方向后,再次点击分配!')
return
}
let data = { let data = {
stockoutId: stockoutIds[0] stockoutId: stockoutIds[0],
spare8:this.queryParams.spare8
} }
autoAllot(data).then(response => { autoAllot(data).then(response => {
if (response.code !== 200){ if (response.code !== 200){

View File

@@ -44,14 +44,14 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<!-- <el-form-item label="入库时间" prop="startDate">&lt;!&ndash; 入库时间 &ndash;&gt; <!-- <el-form-item label="入库时间" prop="startDate">&lt;!&ndash; 入库时间 &ndash;&gt;
<el-date-picker clearable <el-date-picker clearable
v-model="queryParams.inDate" v-model="queryParams.inDate"
type="date" type="date"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
placeholder="请选择入库时间"> placeholder="请选择入库时间">
</el-date-picker> </el-date-picker>
</el-form-item>--> </el-form-item>-->
<el-form-item label="存货名称" prop="productName"><!-- 存货名称 --> <el-form-item label="存货名称" prop="productName"><!-- 存货名称 -->
@@ -63,6 +63,28 @@
/> />
</el-form-item> </el-form-item>
<el-form-item label="托盘类型" prop="ktpType"> <!-- 作业类型 -->
<el-select v-model="queryParams.ktpType" placeholder="请选择托盘类型" clearable>
<el-option
v-for="item in ktpType"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<el-form-item label="物料类型" prop="model"> <!-- 作业类型 -->
<el-select v-model="queryParams.model" placeholder="请选择物料类型" clearable>
<el-option
v-for="item in productType"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button><!-- 搜索 --> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button><!-- 搜索 -->
@@ -107,36 +129,36 @@
</el-row> </el-row>
<el-table v-loading="loading" :data="managementList" @selection-change="handleSelectionChange" max-height="650"> <el-table v-loading="loading" :data="managementList" @selection-change="handleSelectionChange" max-height="650">
<el-table-column type="selection" align="center" /> <el-table-column type="selection" align="center"/>
<el-table-column label="库存编码" align="left" prop="stockId" width="180" sortable/> <el-table-column label="库存编码" align="left" prop="stockId" width="180" sortable/>
<el-table-column label="货位名称" align="left" prop="cargoSpaceName" width="180"/> <el-table-column label="货位名称" align="left" prop="cargoSpaceName" width="180"/>
<el-table-column width="180" label="库存状态" align="center" prop="stockStatus" > <el-table-column width="180" label="库存状态" align="center" prop="stockStatus">
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.stock_status" :value="scope.row.stockStatus"/> <dict-tag :options="dict.type.stock_status" :value="scope.row.stockStatus"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column width="180" label="物料编码" align="left" prop="productId" /> <el-table-column width="180" label="物料编码" align="left" prop="productId"/>
<el-table-column width="180" label="物料名称" align="left" prop="productName" /> <el-table-column width="180" label="物料名称" align="left" prop="productName"/>
<el-table-column width="180" label="批次号" align="left" prop="lotNo" /> <el-table-column width="180" label="批次号" align="left" prop="lotNo"/>
<el-table-column label="托盘条码" align="center" prop="trayCode" width="160" sortable/> <el-table-column label="托盘条码" align="center" prop="trayCode" width="160" sortable/>
<el-table-column width="180" label="入库时间" align="left" prop="inDate" sortable/> <el-table-column width="180" label="入库时间" align="left" prop="inDate" sortable/>
<el-table-column width="100" label="数量" align="left" prop="quantity" sortable/> <el-table-column width="100" label="数量" align="left" prop="quantity" sortable/>
<el-table-column width="180" label="作业ID" align="left" prop="jobId" sortable/> <el-table-column width="180" label="作业ID" align="left" prop="jobId" sortable/>
<el-table-column width="180" label="出库数量" align="left" prop="outQuantity" /> <el-table-column width="180" label="出库数量" align="left" prop="outQuantity"/>
<el-table-column width="180" label="入库单ID" align="left" prop="stockinId" sortable/> <el-table-column width="180" label="入库单ID" align="left" prop="stockinId" sortable/>
<el-table-column width="180" label="入库子单ID" align="left" prop="stockinDetailId" sortable/> <el-table-column width="180" label="入库子单ID" align="left" prop="stockinDetailId" sortable/>
<!-- <el-table-column label="入库类型" align="center" prop="inType" />--> <!-- <el-table-column label="入库类型" align="center" prop="inType" />-->
<!-- <el-table-column label="仓库编码" align="center" prop="warehouseId" />--> <!-- <el-table-column label="仓库编码" align="center" prop="warehouseId" />-->
<el-table-column width="180" label="层级关系" align="left" prop="spare1" /> <el-table-column width="180" label="层级关系" align="left" prop="spare1"/>
<el-table-column width="180" label="上层物料" align="left" prop="spare2" /> <el-table-column width="180" label="上层物料" align="left" prop="spare2"/>
<el-table-column width="180" label="顶层物料" align="left" prop="spare3" /> <el-table-column width="180" label="顶层物料" align="left" prop="spare3"/>
<el-table-column width="180" label="项目号" align="left" prop="spare4" /> <el-table-column width="180" label="项目号" align="left" prop="spare4"/>
<el-table-column width="180" label="合同号" align="left" prop="spare5" /> <el-table-column width="180" label="合同号" align="left" prop="spare5"/>
<el-table-column width="180" label="销售订单" align="left" prop="spare6" /> <el-table-column width="180" label="销售订单" align="left" prop="spare6"/>
<el-table-column width="180" label="供应商编码" align="left" prop="voltage" /> <el-table-column width="180" label="供应商编码" align="left" prop="voltage"/>
<el-table-column width="180" label="规格型号" align="left" prop="power" /> <el-table-column width="180" label="规格型号" align="left" prop="power"/>
<el-table-column width="180" label="计量单位" align="left" prop="phase" /> <el-table-column width="180" label="计量单位" align="left" prop="phase"/>
<!-- <el-table-column label="净重" align="center" prop="netWeight" />--> <!-- <el-table-column label="净重" align="center" prop="netWeight" />-->
<el-table-column width=120 label="操作" align="center" class-name="small-padding fixed-width"> <!-- 操作 --> <el-table-column width=120 label="操作" align="center" class-name="small-padding fixed-width"> <!-- 操作 -->
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@@ -168,12 +190,12 @@
<!-- 添加或修改库存信息对话框 --> <!-- 添加或修改库存信息对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body> <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px"> <el-form ref="form" :model="form" :rules="rules" label-width="80px">
<!-- <el-form-item label="库存ID" prop="stockId"> &lt;!&ndash; 库存id &ndash;&gt;--> <!-- <el-form-item label="库存ID" prop="stockId"> &lt;!&ndash; 库存id &ndash;&gt;-->
<!-- <el-input v-model="form.stockId" placeholder="请输入库存ID" />--> <!-- <el-input v-model="form.stockId" placeholder="请输入库存ID" />-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<!-- <el-form-item label="货位ID" prop="cargoSpaceId"> &lt;!&ndash; 货位id &ndash;&gt;--> <!-- <el-form-item label="货位ID" prop="cargoSpaceId"> &lt;!&ndash; 货位id &ndash;&gt;-->
<!-- <el-input v-model="form.cargoSpaceId" placeholder="请输入货位ID" />--> <!-- <el-input v-model="form.cargoSpaceId" placeholder="请输入货位ID" />-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<el-form-item label="物料" prop="productId"> <!-- 物料 --> <el-form-item label="物料" prop="productId"> <!-- 物料 -->
<el-input <el-input
@@ -215,7 +237,7 @@
</el-form-item> </el-form-item>
<el-form-item label="库存数量" prop="quantity"> <!-- 库存数量 --> <el-form-item label="库存数量" prop="quantity"> <!-- 库存数量 -->
<el-input v-model="form.quantity" placeholder="请输入库存数量" /> <el-input v-model="form.quantity" placeholder="请输入库存数量"/>
</el-form-item> </el-form-item>
</el-form> </el-form>
@@ -256,11 +278,11 @@
@row-click="handleProductRowClick" @row-click="handleProductRowClick"
highlight-current-row highlight-current-row
max-height="400"> max-height="400">
<el-table-column label="品号" align="center" prop="productId" /> <el-table-column label="品号" align="center" prop="productId"/>
<el-table-column label="品名" align="center" prop="productName" /> <el-table-column label="品名" align="center" prop="productName"/>
<el-table-column label="规格" align="center" prop="spec" /> <el-table-column label="规格" align="center" prop="spec"/>
<el-table-column label="型号" align="center" prop="spare1" /> <el-table-column label="型号" align="center" prop="spare1"/>
<el-table-column label="单位" align="center" prop="unit" /> <el-table-column label="单位" align="center" prop="unit"/>
</el-table> </el-table>
<pagination <pagination
@@ -318,17 +340,17 @@
@row-click="handleCargoSpaceRowClick" @row-click="handleCargoSpaceRowClick"
highlight-current-row highlight-current-row
max-height="400"> max-height="400">
<el-table-column label="货位编码" align="center" prop="cargoSpaceId" /> <el-table-column label="货位编码" align="center" prop="cargoSpaceId"/>
<el-table-column label="货位名称" align="center" prop="cargoSpaceName" /> <el-table-column label="货位名称" align="center" prop="cargoSpaceName"/>
<el-table-column label="仓库名称" align="center" prop="warehouseName" /> <el-table-column label="仓库名称" align="center" prop="warehouseName"/>
<el-table-column label="状态" align="center" prop="status"> <el-table-column label="状态" align="center" prop="status">
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.cargo_space_status" :value="scope.row.status"/> <dict-tag :options="dict.type.cargo_space_status" :value="scope.row.status"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="排" align="center" prop="thePlatoon" /> <el-table-column label="排" align="center" prop="thePlatoon"/>
<el-table-column label="列" align="center" prop="theColumn" /> <el-table-column label="列" align="center" prop="theColumn"/>
<el-table-column label="层" align="center" prop="theFloor" /> <el-table-column label="层" align="center" prop="theFloor"/>
</el-table> </el-table>
<pagination <pagination
@@ -348,13 +370,14 @@
</template> </template>
<script> <script>
import { listManagement, getManagement, delManagement, addManagement, updateManagement } from "@/api/stock/management" import {listManagement, getManagement, delManagement, addManagement, updateManagement} from "@/api/stock/management"
import {listWarehouse} from "@/api/bas/warehouse" import {listWarehouse} from "@/api/bas/warehouse"
import { listBasProduct } from "@/api/bas/BasProduct" import {listBasProduct} from "@/api/bas/BasProduct"
import { listCargoSpace } from "@/api/bas/cargoSpace" import {listCargoSpace} from "@/api/bas/cargoSpace"
export default { export default {
name: "Management", name: "Management",
dicts: ['product_status', 'stock_status','cargo_space_status','cargo_space_lock_status'], dicts: ['product_status', 'stock_status', 'cargo_space_status', 'cargo_space_lock_status'],
data() { data() {
return { return {
// 遮罩层 // 遮罩层
@@ -373,6 +396,8 @@ export default {
managementList: [], managementList: [],
// 仓库选项 // 仓库选项
warehouseOptions: [], warehouseOptions: [],
productType: [{label: '半托', value: '0'}, {label: '满托', value: '1'}],
ktpType: [{label: '空托盘', value: '1'}, {label: '物料', value: '2'}],
// 弹出层标题 // 弹出层标题
title: "", title: "",
// 是否显示弹出层 // 是否显示弹出层
@@ -405,10 +430,12 @@ export default {
spare3: null, spare3: null,
spare4: null, spare4: null,
spare5: null, spare5: null,
spare6: null spare6: null,
ktpType: null,
model: null
}, },
queryWarehouse: { queryWarehouse: {
pageNum:1, pageNum: 1,
pageSize: 99 pageSize: 99
}, },
// 表单参数 // 表单参数
@@ -483,8 +510,6 @@ export default {
inDate: null, inDate: null,
backDate: null, backDate: null,
productGuid: null, productGuid: null,
productId: null,
productName: null,
quantity: null, quantity: null,
jobId: null, jobId: null,
trayCode: null, trayCode: null,
@@ -500,7 +525,9 @@ export default {
spare3: null, spare3: null,
spare4: null, spare4: null,
spare5: null, spare5: null,
spare6: null spare6: null,
ktpType: null,
productType: null
} }
this.resetForm("form") this.resetForm("form")
}, },
@@ -519,7 +546,7 @@ export default {
// 多选框选中数据 // 多选框选中数据
handleSelectionChange(selection) { handleSelectionChange(selection) {
this.ids = selection.map(item => item.stockId) this.ids = selection.map(item => item.stockId)
this.single = selection.length!==1 this.single = selection.length !== 1
this.multiple = !selection.length this.multiple = !selection.length
}, },
/** 新增按钮操作 */ /** 新增按钮操作 */
@@ -561,12 +588,13 @@ export default {
/** 删除按钮操作 */ /** 删除按钮操作 */
handleDelete(row) { handleDelete(row) {
const stockIds = row.stockId || this.ids const stockIds = row.stockId || this.ids
this.$modal.confirm("是否确认删除库存信息编号为" + stockIds).then(function() { // 是否确认删除库存信息编号为 this.$modal.confirm("是否确认删除库存信息编号为" + stockIds).then(function () { // 是否确认删除库存信息编号为
return delManagement(stockIds) return delManagement(stockIds)
}).then(() => { }).then(() => {
this.getList() this.getList()
this.$modal.msgSuccess("删除成功") // 删除成功 this.$modal.msgSuccess("删除成功") // 删除成功
}).catch(() => {}) }).catch(() => {
})
}, },
/** 导出按钮操作 */ /** 导出按钮操作 */
handleExport() { handleExport() {

View File

@@ -9,7 +9,7 @@ const CompressionPlugin = require('compression-webpack-plugin')
const name = process.env.VUE_APP_TITLE || '若依管理系统' // 网页标题 const name = process.env.VUE_APP_TITLE || '若依管理系统' // 网页标题
const baseUrl = 'http://127.0.0.1:8080' // 后端接口 const baseUrl = 'http://192.168.188.236:8080' // 后端接口
const port = process.env.port || process.env.npm_config_port || 80 // 端口 const port = process.env.port || process.env.npm_config_port || 80 // 端口