代码更新:

1.增加供应商相关代码。
This commit is contained in:
梁州 2024-08-21 16:05:22 +08:00
parent 5a3ac10c72
commit 0dd0bc900c
6 changed files with 127 additions and 1 deletions

View File

@ -3,6 +3,8 @@ package com.ruoyi.web.controller.business;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.ruoyi.business.domain.*;
import com.ruoyi.business.service.*;
import com.ruoyi.business.utils.EbsUtils;
@ -14,10 +16,10 @@ import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.ShiroUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.http.HttpUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.system.service.ISysConfigService;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.hpsf.GUID;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
@ -35,6 +37,7 @@ import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Objects;
/**
* 入库任务单Controller
@ -75,6 +78,9 @@ public class TOngoodsshelfController extends BaseController
@Autowired
private ITBaseGoodsService goodsService;
@Autowired
private ITBaseProviderService tBaseProviderService;
@RequiresPermissions("business:ongoodsshelf:view")
@GetMapping()
public String ongoodsshelf(ModelMap mmap)
@ -82,6 +88,9 @@ public class TOngoodsshelfController extends BaseController
// 获取用户
SysUser sysUser = ShiroUtils.getCurrentUser();
mmap.put("sysUser", sysUser);
// 获取供应商
List<TBaseProvider> providers = tBaseProviderService.list();
mmap.put("providers", providers);
return prefix + "/ongoodsshelf";
}
@ -133,6 +142,70 @@ public class TOngoodsshelfController extends BaseController
return toAjax(false);
}
/**
* 开始入库
*/
@Log(title = "开始入库", businessType = BusinessType.UPDATE)
@PostMapping(value = "/startIn",consumes = MediaType.APPLICATION_JSON_VALUE)
@ResponseBody
public AjaxResult startIn(@RequestBody TBaseProvider startInRequest) {
logger.info("接收到开始入库请求:{}", JSON.toJSONString(startInRequest));
try {
if (StringUtils.isEmpty(startInRequest.getProviderId())) {
return error("请求参数缺少供应商id。");
}
TBaseProvider currentInProvider = tBaseProviderService.getOne(new LambdaQueryWrapper<TBaseProvider>()
.eq(TBaseProvider::getRemark, "1")
.last("limit 1"));
if (currentInProvider == null) {
// 查询当前供应商
TBaseProvider currentRequestProvider = tBaseProviderService.getOne(new LambdaQueryWrapper<TBaseProvider>()
.eq(TBaseProvider::getProviderId, startInRequest.getProviderId())
.last("limit 1"));
if (currentRequestProvider == null) {
return error("请求的供应商错误,数据库中不存在。");
}
// 更新当前供应商为入库中状态
currentRequestProvider.setRemark("1");
if (tBaseProviderService.updateById(currentRequestProvider)) {
return success("当前供应商开始入库成功。");
} else {
return error("当前供应商开始入库失败。");
}
} else {
if (Objects.equals(currentInProvider.getProviderId(), startInRequest.getProviderId())) {
return success("当前供应商已经开始入库。");
} else {
return error("其他供应商正在入库,请结束后再试。");
}
}
} catch (Exception e) {
return error("发生异常。");
}
}
/**
* 停止入库
*/
@Log(title = "停止入库", businessType = BusinessType.UPDATE)
@PostMapping(value = "/stopIn",consumes = MediaType.APPLICATION_JSON_VALUE)
@ResponseBody
public AjaxResult stopIn(@RequestBody TBaseProvider startInRequest) {
logger.info("接收到停止入库请求:{}", JSON.toJSONString(startInRequest));
try {
boolean result = tBaseProviderService.update(new LambdaUpdateWrapper<TBaseProvider>()
.set(TBaseProvider::getRemark, "0")
.eq(TBaseProvider::getRemark, "1"));
if (result) {
return success("停止入库成功。");
} else {
return error("停止入库失败。");
}
} catch (Exception e) {
return error("发生异常。");
}
}
/**
* 结束入库
*/

View File

@ -0,0 +1,20 @@
package com.ruoyi.business.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
/**
* 供应商
*/
@Data
@TableName(value = "t_base_provider_dictionary", autoResultMap = true)
public class TBaseProvider {
@TableId(value = "PROVIDER_ID")
private String providerId;
@TableField(value = "PROVIDER_NAME")
private String providerName;
@TableField(value = "REMARK")
private String remark;
}

View File

@ -0,0 +1,9 @@
package com.ruoyi.business.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.business.domain.TBaseProvider;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface TBaseProviderMapper extends BaseMapper<TBaseProvider> {
}

View File

@ -0,0 +1,7 @@
package com.ruoyi.business.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.business.domain.TBaseProvider;
public interface ITBaseProviderService extends IService<TBaseProvider> {
}

View File

@ -0,0 +1,11 @@
package com.ruoyi.business.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.business.domain.TBaseProvider;
import com.ruoyi.business.mapper.TBaseProviderMapper;
import com.ruoyi.business.service.ITBaseProviderService;
import org.springframework.stereotype.Service;
@Service
public class TBaseProviderServiceImpl extends ServiceImpl<TBaseProviderMapper, TBaseProvider> implements ITBaseProviderService {
}

View File

@ -0,0 +1,6 @@
<?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="com.ruoyi.business.mapper.TBaseProviderMapper">
</mapper>