服务指令-盘点指令,开始结束

This commit is contained in:
曹磊 2025-12-31 14:24:56 +08:00
parent 4a38ac5397
commit 16b7f90c5a
7 changed files with 238 additions and 10 deletions

View File

@ -2,7 +2,6 @@ package com.nu.modules.pad.invoicing.api;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.nu.entity.*;
import com.nu.modules.invoicing.api.IInvoicingApi;
import com.nu.modules.invoicing.api.IPddApi;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang.StringUtils;
@ -10,9 +9,7 @@ import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@ -23,7 +20,6 @@ import java.util.Map;
@RequestMapping("/api/pad/invoicing/pdd")
public class InvoicingPddApi {
@Autowired
private IPddApi pddApi;
@ -136,4 +132,46 @@ public class InvoicingPddApi {
Map<String, Object> pageList = pddApi.queryPddStartInfo(invoicingPddInfoEntity);
return Result.OK(pageList);
}
/**
* 盘点单-服务指令-开始服务
*
* @param dto
* @return
*/
@ApiOperation(value = "盘点单-服务指令-开始服务", notes = "盘点单-服务指令-开始服务")
@AutoLog(value = "盘点单-服务指令-开始服务", clientType = "app")
@PostMapping(value = "/startDirectiveServe")
public Result<?> startDirectiveServe(@RequestBody InvoicingPddInfoEntity dto) {
if (StringUtils.isBlank(dto.getId())) {
return Result.error("缺少参数");
}
Map<String, String> result = pddApi.startDirectiveServe(dto);
if ("0".equals(result.get("error_code"))) {
return Result.OK(result.get("msg"));
} else {
return Result.error(result.get("msg"));
}
}
/**
* 盘点单-服务指令-结束服务
*
* @param dto
* @return
*/
@ApiOperation(value = "盘点单-服务指令-结束服务", notes = "盘点单-服务指令-结束服务")
@AutoLog(value = "盘点单-服务指令-结束服务", clientType = "app")
@PostMapping(value = "/finishDirectiveServe")
public Result<?> finishDirectiveServe(@RequestBody InvoicingPddInfoEntity dto) {
if (StringUtils.isBlank(dto.getId())) {
return Result.error("缺少参数");
}
Map<String, String> result = pddApi.finishDirectiveServe(dto);
if ("0".equals(result.get("error_code"))) {
return Result.OK(result.get("msg"));
} else {
return Result.error(result.get("msg"));
}
}
}

View File

@ -24,4 +24,8 @@ public interface IPddApi {
Map<String, Object> voidedPddMain(InvoicingPddMainEntity invoicingPddMainEntity);
Map<String, Object> queryPddStartInfo(InvoicingPddInfoEntity invoicingPddInfoEntity);
Map<String, String> startDirectiveServe(InvoicingPddInfoEntity invoicingPddInfoEntity);
Map<String, String> finishDirectiveServe(InvoicingPddInfoEntity invoicingPddInfoEntity);
}

View File

@ -4,13 +4,10 @@ import cn.hutool.core.bean.BeanUtil;
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.nu.entity.InvoicingPddInfoEntity;
import com.nu.entity.InvoicingPddMainEntity;
import com.nu.entity.MaterialInfoEntity;
import com.nu.entity.*;
import com.nu.modules.cgd.entity.NuWarehouseMaterialCrkInfo;
import com.nu.modules.cgd.mapper.NuWarehouseMaterialCrkInfoMapper;
import com.nu.modules.invoicing.api.IInvoicingApi;
import com.nu.modules.invoicing.api.IPddApi;
import com.nu.modules.invoicing.api.*;
import com.nu.modules.nubaseinfo.entity.NuBaseInfo;
import com.nu.modules.nubaseinfo.mapper.NuBaseInfoMapper;
import com.nu.modules.pdd.entity.NuInvoicingPddInfo;
@ -23,6 +20,7 @@ import com.nu.modules.warehouseMaterialInfo.mapper.BlWarehouseMaterialInfoMapper
import com.nu.utils.DictUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.system.query.QueryRuleEnum;
import org.jeecg.common.system.vo.LoginUser;
@ -65,6 +63,10 @@ public class NuInvoicingPddMainServiceImpl extends ServiceImpl<NuInvoicingPddMai
@Autowired
private DictUtils dictUtils;
@Autowired
private IInvoicingOrdersApi invoicingOrdersApi;
@Autowired
private IInvoicingPdOrdersApi invoicingPdOrdersApi;
@Override
public IPage<InvoicingPddMainEntity> queryPddList(Integer pageNo, Integer pageSize, InvoicingPddMainEntity invoicingPddMainEntity, HttpServletRequest req) {
@ -96,8 +98,8 @@ public class NuInvoicingPddMainServiceImpl extends ServiceImpl<NuInvoicingPddMai
@Override
@Transactional(rollbackFor = Exception.class)
public Map<String,Object> addPddMain(InvoicingPddMainEntity invoicingPddMainEntity) {
Map<String,Object> map = new HashMap<>();
List<NuInvoicingPddMain> list = baseMapper.selectList(new QueryWrapper<NuInvoicingPddMain>().eq("nu_id",invoicingPddMainEntity.getNuId()).eq("pdd_type","1"));
if(list.size() > 0){
map.put("success","false");
@ -205,6 +207,7 @@ public class NuInvoicingPddMainServiceImpl extends ServiceImpl<NuInvoicingPddMai
@Transactional(rollbackFor = Exception.class)
public Map<String, Object> submitPddMain(InvoicingPddMainEntity invoicingPddMainEntity) {
Map<String,Object> map = new HashMap<>();
LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
if(user == null || StringUtils.isBlank(user.getRealname())){
user = new LoginUser();
@ -349,4 +352,35 @@ public class NuInvoicingPddMainServiceImpl extends ServiceImpl<NuInvoicingPddMai
map.put("message","操作成功");
return map;
}
/**
* 工单开始
* @param dto
* @return
*/
@Override
@Transactional(rollbackFor = Exception.class)
public Map<String, String> startDirectiveServe(InvoicingPddInfoEntity dto) {
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
InvoicingOrdersEntity orderEntity = new InvoicingOrdersEntity();
orderEntity.setId(dto.getId());//指令id
orderEntity.setInitiatorId(sysUser.getEmployessId());//员工id
Map<String, String> result = invoicingOrdersApi.beginOrder(orderEntity);
return result;
}
/**
* 工单结束
* @param dto
* @return
*/
@Override
@Transactional(rollbackFor = Exception.class)
public Map<String, String> finishDirectiveServe(InvoicingPddInfoEntity dto){
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
InvoicingOrdersEntity p_ = new InvoicingOrdersEntity();
p_.setId(dto.getId());
p_.setInitiatorId(sysUser.getEmployessId());
return invoicingOrdersApi.finishOrder(p_);
}
}

View File

@ -0,0 +1,35 @@
package com.nu.modules.invoicing.api;
import com.nu.entity.InvoicingOrdersEntity;
import org.jeecg.common.api.vo.Result;
import java.util.Map;
/**
* @Description: 仓库类服务指令盘点工单
* @Author: caolei
* @Date: 2025-12-29
* @Version: V1.0
*/
public interface IInvoicingPdOrdersApi {
/**
* 获取工单信息
* @param invoicingOrdersEntity
* @return
*/
InvoicingOrdersEntity getOrderInfo(InvoicingOrdersEntity invoicingOrdersEntity);
/**
* 是否可提交
* @param invoicingOrdersEntity
*/
Result<String> izCanAdd(InvoicingOrdersEntity invoicingOrdersEntity);
/**
* 单元退货-提交时修改业务单号
* @param invoicingOrdersEntity
*/
void updateOrderBizId(InvoicingOrdersEntity invoicingOrdersEntity);
}

View File

@ -280,6 +280,9 @@
<if test="bizType != null and bizType != ''">
and biz_type = #{bizType}
</if>
<if test="flowCode != null and flowCode != ''">
and biz_type = #{flowCode}
</if>
<if test="delFlag != null and delFlag != ''">
and del_flag = #{delFlag}
</if>

View File

@ -0,0 +1,14 @@
package com.nu.modules.biz.invoicing.order.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.nu.modules.biz.invoicing.order.entity.InvoicingOrders;
/**
* @Description: 仓库类服务指令-盘点工单
* @Author: caolei
* @Date: 2025-12-29
* @Version: V1.0
*/
public interface IPdOrdersService extends IService<InvoicingOrders> {
}

View File

@ -0,0 +1,100 @@
package com.nu.modules.biz.invoicing.order.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.nu.entity.InvoicingOrdersEntity;
import com.nu.modules.biz.invoicing.order.entity.InvoicingOrders;
import com.nu.modules.biz.invoicing.order.mapper.InvoicingOrdersMapper;
import com.nu.modules.biz.invoicing.order.service.IEmpOrdersService;
import com.nu.modules.biz.invoicing.order.service.IPdOrdersService;
import com.nu.modules.invoicing.api.IInvoicingPdOrdersApi;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.api.vo.Result;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.*;
/**
* @Description: 仓库类服务指令-盘点工单
* @Author: caolei
* @Date: 2025-12-29
* @Version: V1.0
*/
@Service
@Slf4j
public class PdOrdersServiceImpl extends ServiceImpl<InvoicingOrdersMapper, InvoicingOrders> implements IPdOrdersService, IInvoicingPdOrdersApi {
@Autowired
IEmpOrdersService empOrdersService;
/**
* 获取工单信息
* @param invoicingOrdersEntity
* @return
*/
@Override
public InvoicingOrdersEntity getOrderInfo(InvoicingOrdersEntity invoicingOrdersEntity){
log.info("function:getOrderInfo");
log.info("id:"+invoicingOrdersEntity.getId());
InvoicingOrders io = new InvoicingOrders();
BeanUtils.copyProperties(invoicingOrdersEntity, io);
InvoicingOrders entity = baseMapper.getOrderOne(io);
if(entity!=null){
InvoicingOrdersEntity ioe = new InvoicingOrdersEntity();
BeanUtils.copyProperties(entity, ioe);
return ioe;
}
return null;
}
/**
* 是否可提交
* @param invoicingOrdersEntity
*/
@Override
public Result<String> izCanAdd(InvoicingOrdersEntity invoicingOrdersEntity){
InvoicingOrders io = new InvoicingOrders();
BeanUtils.copyProperties(invoicingOrdersEntity, io);
InvoicingOrders entity = baseMapper.getOrderOne(io);
if(entity!=null){
if(!"Y".equals(entity.getIzStart())) {
return Result.error("工单未开始");
}
if(!"".equals(entity.getBizId())) {
return Result.error("工单未开始");
}
}else{
return Result.error("工单不存在");
}
return Result.OK("可以新增");
}
/**
* 单元退货流程中提交时修改业务单号
* @param invoicingOrdersEntity
*/
@Override
public void updateOrderBizId(InvoicingOrdersEntity invoicingOrdersEntity){
log.info("function:updateOrderBizId");
log.info("PoolId:"+invoicingOrdersEntity.getPoolId());
log.info("BizId:"+invoicingOrdersEntity.getBizId());
log.info("UpdateBy:"+invoicingOrdersEntity.getInitiatorId());
empOrdersService.getNames(invoicingOrdersEntity);
QueryWrapper<InvoicingOrders> ioQw = new QueryWrapper<>();
ioQw.eq("pool_id", invoicingOrdersEntity.getPoolId());
InvoicingOrders order = this.getOne(ioQw);
log.info("order:"+order);
if(order!=null){
log.info("OrderId:"+order.getId());
//修改请领单的bizId
InvoicingOrders entity = new InvoicingOrders();
entity.setId(order.getId());
entity.setBizId(invoicingOrdersEntity.getBizId());
entity.setUpdateEmp(invoicingOrdersEntity.getInitiatorId());
entity.setUpdateTime(new Date());
baseMapper.updateById(entity);
}
}
}