add:半成品代码/仓库flow

This commit is contained in:
zhangzhiqiang
2023-05-10 14:36:02 +08:00
parent 38dfe6e96d
commit a17c0eff45
28 changed files with 575 additions and 101 deletions

View File

@@ -0,0 +1,15 @@
package org.nl.common.anno;
import org.nl.common.enums.InterfaceLogType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
/*
* @author ZZQ
* @Date 2023/3/14 10:13 上午
*/
@Retention(RetentionPolicy.RUNTIME)
public @interface Datazhuazhua {
}

View File

@@ -0,0 +1,40 @@
package org.nl.config.mybatis;
import org.apache.commons.lang3.StringUtils;
import org.apache.ibatis.executor.statement.StatementHandler;
import org.apache.ibatis.mapping.BoundSql;
import org.apache.ibatis.mapping.MappedStatement;
import org.apache.ibatis.plugin.*;
import org.apache.ibatis.reflection.MetaObject;
import org.apache.ibatis.reflection.SystemMetaObject;
import org.springframework.stereotype.Component;
import java.sql.Connection;
/**
* mybatis数据库操作拦截
*/
@Component
@Intercepts({@Signature(type = StatementHandler.class, method = "prepare", args = {Connection.class, Integer.class})})
public class DatazhuazhuaInterceptor implements Interceptor {
@Override
public Object intercept(Invocation invocation) throws Throwable {
StatementHandler statementHandler = (StatementHandler) invocation.getTarget();
MetaObject metaObject = SystemMetaObject.forObject(statementHandler);
MappedStatement mappedStatement = (MappedStatement) metaObject.getValue("delegate.mappedStatement"); String methodName = StringUtils.substringAfterLast(mappedStatement.getId(), ".");
String methodNam2e = StringUtils.substringAfterLast(mappedStatement.getId(), ".");
BoundSql boundSql = (BoundSql) metaObject.getValue("delegate.boundSql");
System.out.println("mybatis拦截器+"+methodNam2e+"——sql"+boundSql.getSql());
return invocation.proceed();
}
@Override
public Object plugin(Object target) {
if (target instanceof StatementHandler) {
return Plugin.wrap(target, this);
}
return target;
}
}

View File

@@ -0,0 +1,23 @@
package org.nl.wms.storage_manage;
import lombok.AllArgsConstructor;
import lombok.Getter;
/*
* @author ZZQ
* @Date 2023/5/10 11:41
*/
@AllArgsConstructor
@Getter
public enum ST_CHANGE_TYPE {
IOSTORINV_IN("1","入库",""),
IOSTORINV_OUT("1","出库",""),
MOVEINV_IN("1","移库入库",""),
MOVEINV_OUT("1","移库出库",""),
MOVEORLESS_IN("1","损溢单入库",""),
MOVEORLESS_OUT("1","损溢单出库",""),
;
private String code;
private String desc;
private String table;
}

View File

@@ -0,0 +1,27 @@
package org.nl.wms.storage_manage;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import org.nl.common.publish.PublishEvent;
import java.math.BigDecimal;
/*
* @author ZZQ
* @Date 2023/5/10 11:37
* 仓库物料事件
*/
@Builder
@AllArgsConstructor
@Data
public class StorEvent implements PublishEvent {
private String struct_id;
private String material_id;
private String pcsn;
private String bill_code;
public ST_CHANGE_TYPE ST_CHANGE_TYPE;
private BigDecimal change_qty;
private BigDecimal result_qty;
}

View File

@@ -0,0 +1,52 @@
package org.nl.wms.storage_manage;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.nl.common.publish.AbstraceListener;
import org.nl.common.utils.IdUtil;
import org.nl.common.utils.SecurityUtils;
import org.nl.wms.storage_manage.basedata.service.record.dao.StIvtStructivtflow;
import org.nl.wms.storage_manage.basedata.service.record.service.IStIvtIostordailyService;
import org.nl.wms.storage_manage.basedata.service.record.service.IStIvtStructivtflowService;
import org.nl.wms.storage_manage.basedata.service.storage.IStIvtStructattrService;
import org.nl.wms.storage_manage.basedata.service.storage.dao.StIvtStructattr;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
/*
* @author ZZQ
* @Date 2023/5/10 11:39
*/
@Service
public class StorEventListener extends AbstraceListener<StorEvent> {
@Autowired
IStIvtStructivtflowService StructivtflowService;
@Autowired
IStIvtStructattrService structattrService;
@Override
protected void doEvent(StorEvent event) {
StIvtStructivtflow flow = new StIvtStructivtflow();
基础数据封装: {
flow.setChange_id(IdUtil.getStringId());
flow.setMaterial_id(event.getMaterial_id());
flow.setPcsn(event.getPcsn());
flow.setBill_code(event.getBill_code());
flow.setBill_type_scode(event.ST_CHANGE_TYPE.getCode());
flow.setChange_qty(event.getChange_qty());
flow.setResult_qty(event.getResult_qty());
flow.setChange_person_name(SecurityUtils.getCurrentNickName());
flow.setChange_person_id(SecurityUtils.getCurrentUserId());
flow.setChange_time(new Date());
}
参数数据封装: {
StIvtStructattr struct = structattrService.getOne(new QueryWrapper<StIvtStructattr>().eq("struct_id", event.getStruct_id()));
flow.setStruct_id(event.getStruct_id());
flow.setStruct_name(struct.getStruct_name());
flow.setStruct_code(struct.getStruct_code());
flow.setStor_id(struct.getStor_id());
}
StructivtflowService.save(flow);
}
}

View File

@@ -1,4 +1,4 @@
package org.nl.wms.storage_manage.semimanage.controller.structLvt;
package org.nl.wms.storage_manage.basedata.controller.record;
import org.springframework.web.bind.annotation.RequestMapping;

View File

@@ -1,4 +1,4 @@
package org.nl.wms.storage_manage.semimanage.controller.structLvt;
package org.nl.wms.storage_manage.basedata.controller.record;
import org.springframework.web.bind.annotation.RequestMapping;

View File

@@ -1,4 +1,4 @@
package org.nl.wms.storage_manage.semimanage.service.structIvt.dao;
package org.nl.wms.storage_manage.basedata.service.record.dao;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
@@ -17,7 +17,7 @@ import lombok.EqualsAndHashCode;
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("st_ivt_iostordaily_bcp")
public class StIvtIostordailyBcp implements Serializable {
public class StIvtIostordaily implements Serializable {
private static final long serialVersionUID = 1L;

View File

@@ -1,4 +1,4 @@
package org.nl.wms.storage_manage.semimanage.service.structIvt.dao;
package org.nl.wms.storage_manage.basedata.service.record.dao;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
@@ -18,7 +18,7 @@ import lombok.EqualsAndHashCode;
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("st_ivt_structivtflow_bcp")
public class StIvtStructivtflowBcp implements Serializable {
public class StIvtStructivtflow implements Serializable {
private static final long serialVersionUID = 1L;

View File

@@ -1,6 +1,6 @@
package org.nl.wms.storage_manage.semimanage.service.structIvt.dao.mapper;
package org.nl.wms.storage_manage.basedata.service.record.dao.mapper;
import org.nl.wms.storage_manage.semimanage.service.structIvt.dao.StIvtIostordailyBcp;
import org.nl.wms.storage_manage.basedata.service.record.dao.StIvtIostordaily;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
@@ -11,6 +11,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* @author generator
* @since 2023-05-10
*/
public interface StIvtIostordailyBcpMapper extends BaseMapper<StIvtIostordailyBcp> {
public interface StIvtIostordailyBcpMapper extends BaseMapper<StIvtIostordaily> {
}

View File

@@ -1,6 +1,6 @@
package org.nl.wms.storage_manage.semimanage.service.structIvt.dao.mapper;
package org.nl.wms.storage_manage.basedata.service.record.dao.mapper;
import org.nl.wms.storage_manage.semimanage.service.structIvt.dao.StIvtStructivtflowBcp;
import org.nl.wms.storage_manage.basedata.service.record.dao.StIvtStructivtflow;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
@@ -11,6 +11,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* @author generator
* @since 2023-05-10
*/
public interface StIvtStructivtflowBcpMapper extends BaseMapper<StIvtStructivtflowBcp> {
public interface StIvtStructivtflowBcpMapper extends BaseMapper<StIvtStructivtflow> {
}

View File

@@ -1,5 +1,5 @@
<?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.storage_manage.semimanage.service.structIvt.dao.mapper.StIvtIostordailyBcpMapper">
<mapper namespace="org.nl.wms.storage_manage.basedata.service.record.dao.mapper.StIvtIostordailyBcpMapper">
</mapper>

View File

@@ -1,5 +1,5 @@
<?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.storage_manage.semimanage.service.structIvt.dao.mapper.StIvtStructivtflowBcpMapper">
<mapper namespace="org.nl.wms.storage_manage.basedata.service.record.dao.mapper.StIvtStructivtflowBcpMapper">
</mapper>

View File

@@ -0,0 +1,16 @@
package org.nl.wms.storage_manage.basedata.service.record.service;
import org.nl.wms.storage_manage.basedata.service.record.dao.StIvtIostordaily;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 仓库物流日表 服务类
* </p>
*
* @author generator
* @since 2023-05-10
*/
public interface IStIvtIostordailyService extends IService<StIvtIostordaily> {
}

View File

@@ -0,0 +1,16 @@
package org.nl.wms.storage_manage.basedata.service.record.service;
import org.nl.wms.storage_manage.basedata.service.record.dao.StIvtStructivtflow;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 仓位库存变动记录表 服务类
* </p>
*
* @author generator
* @since 2023-05-10
*/
public interface IStIvtStructivtflowService extends IService<StIvtStructivtflow> {
}

View File

@@ -0,0 +1,20 @@
package org.nl.wms.storage_manage.basedata.service.record.service.impl;
import org.nl.wms.storage_manage.basedata.service.record.dao.StIvtIostordaily;
import org.nl.wms.storage_manage.basedata.service.record.dao.mapper.StIvtIostordailyBcpMapper;
import org.nl.wms.storage_manage.basedata.service.record.service.IStIvtIostordailyService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 仓库物流日表 服务实现类
* </p>
*
* @author generator
* @since 2023-05-10
*/
@Service
public class StIvtIostordailyServiceImpl extends ServiceImpl<StIvtIostordailyBcpMapper, StIvtIostordaily> implements IStIvtIostordailyService {
}

View File

@@ -0,0 +1,20 @@
package org.nl.wms.storage_manage.basedata.service.record.service.impl;
import org.nl.wms.storage_manage.basedata.service.record.dao.StIvtStructivtflow;
import org.nl.wms.storage_manage.basedata.service.record.dao.mapper.StIvtStructivtflowBcpMapper;
import org.nl.wms.storage_manage.basedata.service.record.service.IStIvtStructivtflowService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 仓位库存变动记录表 服务实现类
* </p>
*
* @author generator
* @since 2023-05-10
*/
@Service
public class StIvtStructivtflowServiceImpl extends ServiceImpl<StIvtStructivtflowBcpMapper, StIvtStructivtflow> implements IStIvtStructivtflowService {
}

View File

@@ -25,7 +25,7 @@ public class StIvtStructattr implements Serializable {
/**
* 仓位标识
*/
private Long struct_id;
private String struct_id;
/**
* 仓位编码
@@ -45,7 +45,7 @@ public class StIvtStructattr implements Serializable {
/**
* 库区标识
*/
private Long sect_id;
private String sect_id;
/**
* 库区编码
@@ -60,7 +60,7 @@ public class StIvtStructattr implements Serializable {
/**
* 仓库标识
*/
private Long stor_id;
private String stor_id;
/**
* 仓库编码
@@ -225,7 +225,7 @@ public class StIvtStructattr implements Serializable {
/**
* 锁定任务明细标识
*/
private Long taskdtl_id;
private String taskdtl_id;
/**
* 锁定任务编码
@@ -240,7 +240,7 @@ public class StIvtStructattr implements Serializable {
/**
* 锁定单据标识
*/
private Long inv_id;
private String inv_id;
/**
* 锁定单据编码

View File

@@ -22,14 +22,14 @@ import java.util.Map;
import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.BlockingQueue;
@RestController
@RequiredArgsConstructor
@Api(tags = "半成品入库")
@RequestMapping("/api/in/semiproductIn")
//@RestController
//@RequiredArgsConstructor
//@Api(tags = "半成品入库")
//@RequestMapping("/api/in/semiproductIn")
@Slf4j
@SaIgnore
public class SemiProductInController{
private final SemiProductInService semiProductInService;
private SemiProductInService semiProductInService;
@GetMapping
@Log("查询入库单据")

View File

@@ -1,9 +1,31 @@
package org.nl.wms.storage_manage.semimanage.controller.iostorInv;
import org.springframework.web.bind.annotation.RequestMapping;
import cn.dev33.satoken.annotation.SaIgnore;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.nl.common.TableDataInfo;
import org.nl.common.anno.Log;
import org.nl.common.domain.query.PageQuery;
import org.nl.common.utils.api.ResultCode;
import org.nl.modules.common.exception.BizCoreException;
import org.nl.wms.storage_manage.semimanage.service.iostorInv.IStIvtIostorinvBcpService;
import org.nl.wms.storage_manage.semimanage.service.iostorInv.dao.StIvtIostorinvBcp;
import org.nl.wms.storage_manage.semimanage.service.iostorInv.dto.BcpIostorInvQuery;
import org.nl.wms.storage_manage.service.semiproduct.SemiProductInService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Pageable;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RestController;
import java.util.Arrays;
import java.util.Map;
/**
* <p>
@@ -14,8 +36,178 @@ import org.springframework.web.bind.annotation.RestController;
* @since 2023-05-10
*/
@RestController
@RequestMapping("/stIvtIostorinvBcp")
@Api(tags = "半成品入库")
@RequestMapping("/api/in/semiproductIn")
@Slf4j
@SaIgnore
public class StIvtIostorinvBcpController {
@Autowired
private SemiProductInService semiProductInService;
@Autowired
private IStIvtIostorinvBcpService stIvtIostorinvBcpService;
@GetMapping
@Log("查询入库单据")
@ApiOperation("查询入库单据")
public ResponseEntity<Object> query(BcpIostorInvQuery query, PageQuery page) {
Page<StIvtIostorinvBcp> list = stIvtIostorinvBcpService.page(page.build(), query.build());
return new ResponseEntity<>(TableDataInfo.build(list), HttpStatus.OK);
}
@PostMapping("/create")
@Log("新增入库单")
@ApiOperation("新增入库单")
public ResponseEntity<Object> create(@RequestBody JSONObject form) {
stIvtIostorinvBcpService.create(form);
semiProductInService.insertDtl(form);
return new ResponseEntity<>(HttpStatus.CREATED);
}
@Log("删除出入库单")
@ApiOperation("删除出入库单")
@DeleteMapping
public ResponseEntity<Object> delete(@RequestBody Long[] ids) {
if (ids.length>0){
stIvtIostorinvBcpService.removeByIds(Arrays.asList(ids));
}
return new ResponseEntity<>(HttpStatus.OK);
}
@GetMapping("/getBillDtl")
@Log("查询入库单来源")
@ApiOperation("查询入库单来源")
public ResponseEntity<Object> getBillDtl(@RequestParam Map<String,Object> whereJson, Pageable page) {
return new ResponseEntity<>(semiProductInService.getBillDtl(whereJson, page), HttpStatus.OK);
}
@PostMapping("/semiProductInFromPda")
@Log("C端半成品入库")
@ApiOperation("C端半成品入库")
public ResponseEntity<Object> semiProductInFromPda(@RequestBody JSONObject whereJson) {
log.info("海亮缓存线手持服务 [半成品入库] 接口被请求, 请求参数-{}", whereJson);
//参数校验
if(StringUtils.isBlank(whereJson.getString("iostorinv_id")) || StringUtils.isBlank(whereJson.getString("material_id")) || StringUtils.isBlank(whereJson.getString("plan_qty")) || StringUtils.isBlank(whereJson.getString("storagevehicle_code"))) {
throw new BizCoreException(ResultCode.VALIDATE_FAILED);
}
return new ResponseEntity<>(semiProductInService.semiProductInFromPda(whereJson), HttpStatus.OK);
}
@PutMapping
@Log("修改入库单")
@ApiOperation("修改入库单")
public ResponseEntity<Object> update(@RequestBody JSONObject whereJson) {
semiProductInService.update(whereJson);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@PostMapping("/queryStor")
@Log("查询仓库")
@ApiOperation("查询仓库")
public ResponseEntity<Object> queryStor() {
return new ResponseEntity<>(semiProductInService.queryStor(), HttpStatus.OK);
}
@PostMapping("/getIODtl")
@Log("查询出入库单明细")
@ApiOperation("查询出入库单明细")
public ResponseEntity<Object> getIODtl(@RequestBody JSONObject whereJson) {
return new ResponseEntity<>(semiProductInService.getIODtl(whereJson), HttpStatus.OK);
}
@PostMapping("/commit")
@Log("出入单提交")
@ApiOperation("出入单提交")
public ResponseEntity<Object> commit(@RequestBody Map<String,Object> whereJson) {
semiProductInService.commit(whereJson);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@PostMapping("/getDisDtl")
@Log("查询入库分配明细")
@ApiOperation("查询入库分配明细")
public ResponseEntity<Object> getDisDtl(@RequestBody JSONObject whereJson) {
return new ResponseEntity<>(semiProductInService.getDisDtl(whereJson), HttpStatus.OK);
}
@PostMapping("/confirmvehicle")
@Log("组盘确认")
@ApiOperation("组盘确认")
public ResponseEntity<Object> confirmvehicle(@RequestBody JSONObject whereJson) {
semiProductInService.confirmvehicle(whereJson);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@PostMapping("/divStruct")
@Log("分配货位")
@ApiOperation("分配货位")
public ResponseEntity<Object> divStruct(@RequestBody JSONObject whereJson) {
semiProductInService.divStruct(whereJson);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@PostMapping("/unDivStruct")
@Log("取消分配货位")
@ApiOperation("取消分配货位")
public ResponseEntity<Object> unDivStruct(@RequestBody JSONObject whereJson) {
semiProductInService.unDivStruct(whereJson);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@PostMapping("/divPoint")
@Log("设置起点")
@ApiOperation("设置起点")
public ResponseEntity<Object> divPoint(@RequestBody JSONObject whereJson) {
semiProductInService.divPoint(whereJson);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@PostMapping("/delDis")
@Log("删除分配")
@ApiOperation("删除分配")
public ResponseEntity<Object> delDis(@RequestBody JSONObject whereJson) {
semiProductInService.delDis(whereJson);
return new ResponseEntity<>(HttpStatus.OK);
}
@PostMapping("/queryBoxMater")
@Log("查询箱内子卷")
@ApiOperation("查询箱内子卷")
public ResponseEntity<Object> queryBoxMater(@RequestBody JSONArray whereJson) {
return new ResponseEntity<>(semiProductInService.queryBoxMater(whereJson), HttpStatus.OK);
}
@PostMapping("/updateTask")
@Log("变更任务")
@ApiOperation("变更任务")
public ResponseEntity<Object> updateTask(@RequestBody Map<String,Object> whereJson) {
semiProductInService.updateTask(whereJson);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@PostMapping("/confirm")
@Log("完成单据")
@ApiOperation("完成单据")
public ResponseEntity<Object> confirm(@RequestBody Map<String,Object> whereJson) {
semiProductInService.confirm(whereJson);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@PostMapping("/autoDis")
@Log("自动分配")
@ApiOperation("自动分配")
public ResponseEntity<Object> autoDis(@RequestBody JSONObject whereJson) {
semiProductInService.autoDis(whereJson);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@PostMapping("/getDisTask")
@Log("获取明细任务")
@ApiOperation("获取明细任务")
public ResponseEntity<Object> getDisTask(@RequestBody JSONObject whereJson) {
return new ResponseEntity<>(semiProductInService.getDisTask(whereJson), HttpStatus.OK);
}
}

View File

@@ -1,5 +1,6 @@
package org.nl.wms.storage_manage.semimanage.service.iostorInv;
import com.alibaba.fastjson.JSONObject;
import org.nl.wms.storage_manage.semimanage.service.iostorInv.dao.StIvtIostorinvBcp;
import com.baomidou.mybatisplus.extension.service.IService;
@@ -12,5 +13,10 @@ import com.baomidou.mybatisplus.extension.service.IService;
* @since 2023-05-10
*/
public interface IStIvtIostorinvBcpService extends IService<StIvtIostorinvBcp> {
/**
* 新增
* @param form
* @return
*/
String create(JSONObject form);
}

View File

@@ -1,5 +1,6 @@
package org.nl.wms.storage_manage.semimanage.service.iostorInv.dao.mapper;
import org.nl.common.anno.Datazhuazhua;
import org.nl.wms.storage_manage.semimanage.service.iostorInv.dao.StIvtIostorinvBcp;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -11,7 +12,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* @author generator
* @since 2023-05-10
*/
@Datazhuazhua
public interface StIvtIostorinvBcpMapper extends BaseMapper<StIvtIostorinvBcp> {
}

View File

@@ -0,0 +1,37 @@
package org.nl.wms.storage_manage.semimanage.service.iostorInv.dto;
import lombok.Data;
import org.nl.common.domain.query.BaseQuery;
import org.nl.common.domain.query.QParam;
import org.nl.common.enums.QueryTEnum;
import org.nl.wms.storage_manage.productmanage.service.iostorInv.dao.StIvtIostorinvCp;
import org.nl.wms.storage_manage.semimanage.service.iostorInv.dao.StIvtIostorinvBcp;
/*
* @author ZZQ
* @Date 2023/5/4 19:49
*/
@Data
public class BcpIostorInvQuery extends BaseQuery<StIvtIostorinvBcp> {
private String stor_id;
private String bill_status;
private String bill_type;
private String bill_code;
private String io_type;
private Boolean is_delete = false;
@Override
public void paramMapping() {
super.doP.put("bill_code", QParam.builder().k(new String[]{"bill_code"}).type(QueryTEnum.LK).build());
}
}

View File

@@ -1,5 +1,14 @@
package org.nl.wms.storage_manage.semimanage.service.iostorInv.impl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import io.jsonwebtoken.lang.Assert;
import org.nl.common.utils.SecurityUtils;
import org.nl.modules.system.util.CodeUtil;
import org.nl.modules.wql.WQL;
import org.nl.modules.wql.core.bean.WQLObject;
import org.nl.wms.storage_manage.semimanage.service.iostorInv.dao.StIvtIostorinvBcp;
import org.nl.wms.storage_manage.semimanage.service.iostorInv.dao.mapper.StIvtIostorinvBcpMapper;
import org.nl.wms.storage_manage.semimanage.service.iostorInv.IStIvtIostorinvBcpService;
@@ -17,4 +26,76 @@ import org.springframework.stereotype.Service;
@Service
public class StIvtIostorinvBcpServiceImpl extends ServiceImpl<StIvtIostorinvBcpMapper, StIvtIostorinvBcp> implements IStIvtIostorinvBcpService {
@Override
public String create(JSONObject form) {
Assert.notNull(form,"参数不能为空");
// String currentUserId = SecurityUtils.getCurrentUserId();
// String nickName = SecurityUtils.getCurrentNickName();
// String now = DateUtil.now();
// JSONArray rows = whereJson.getJSONArray("tableData");
// // 插入主表
// JSONObject io_mst = new JSONObject();
// String iostorinv_id = IdUtil.getSnowflake(1, 1).nextId() + "";
// String bill_code = CodeUtil.getNewCode("IO_CODE");
// double total_qty = 0;
// io_mst.put("iostorinv_id", iostorinv_id);
// io_mst.put("bill_code", bill_code);
// io_mst.put("io_type", "0");
// io_mst.put("bill_type", whereJson.getString("bill_type"));
// io_mst.put("biz_date", whereJson.getString("biz_date").substring(0, 10));
// //获取生产区域信息
// JSONObject json = WQL.getWO("QSCH_REGION_01").addParam("flag", "2").addParam("value", whereJson.getString("product_code")).process().uniqueResult(0);
// io_mst.put("product_id", json.getString("dict_id"));
// io_mst.put("product_code", json.getString("value"));
// io_mst.put("product_name", json.getString("label"));
// io_mst.put("detail_count", rows.size());
// io_mst.put("remark", whereJson.get("remark"));
// io_mst.put("bill_status", whereJson.getString("bill_status"));
// io_mst.put("create_id", currentUserId + "");
// io_mst.put("create_name", nickName);
// io_mst.put("create_time", now);
// io_mst.put("update_id", currentUserId + "");
// io_mst.put("update_name", nickName);
// io_mst.put("update_time", now);
// io_mst.put("is_delete", "0");
// for(int i = 0; i < rows.size(); i++) {
// // 插入明细表
// JSONObject row = rows.getJSONObject(i);
// row.put("iostorinvdtl_id", IdUtil.getSnowflake(1, 1).nextId() + "");
// row.put("iostorinv_id", iostorinv_id);
// row.put("seq_no", (i + 1));
// JSONObject material = WQLObject.getWQLObject("md_me_materialbase").query("material_code = '" + row.get("material_code") + "'").uniqueResult(0);
// row.put("material_id", material.getString("material_id"));
// row.put("pcsn", row.getString("pcsn"));
// row.put("bill_status", "10");
// row.put("quality_scode", "01");
// row.put("qty_unit_id", material.getString("base_unit_id"));
// JSONObject unit = WQLObject.getWQLObject("md_pb_measureunit").query("measure_unit_id = '" + material.getString("base_unit_id") + "'").uniqueResult(0);
// row.put("qty_unit_name", unit.getString("unit_name"));
// row.put("assign_qty", row.getDoubleValue("plan_qty"));
// row.put("plan_qty", row.getDoubleValue("plan_qty"));
// String plan_qty = row.getString("plan_qty");
// total_qty += Double.parseDouble(plan_qty);
// WQLObject.getWQLObject("ST_IVT_IOStorInvDtl").insert(row);
// // 插入分配表
// JSONObject dis = new JSONObject();
// dis.put("iostorinvdis_id", IdUtil.getSnowflake(1, 1).nextId() + "");
// dis.put("iostorinv_id", iostorinv_id);
// dis.put("iostorinvdtl_id", row.get("iostorinvdtl_id"));
// dis.put("seq_no", 1);
// dis.put("material_id", row.getString("material_id"));
// dis.put("pcsn", row.getString("pcsn"));
// dis.put("quality_scode", row.getString("quality_scode"));
// dis.put("work_status", "00");
// dis.put("qty_unit_id", material.getString("base_unit_id"));
// dis.put("qty_unit_name", unit.getString("unit_name"));
// dis.put("plan_qty", row.getString("plan_qty"));
// WQLObject.getWQLObject("ST_IVT_IOStorInvDis").insert(dis);
// }
// io_mst.put("total_qty", total_qty);
// WQLObject.getWQLObject("ST_IVT_IOStorInv").insert(io_mst);
// return iostorinv_id;
return null;
}
}

View File

@@ -1,16 +0,0 @@
package org.nl.wms.storage_manage.semimanage.service.structIvt;
import org.nl.wms.storage_manage.semimanage.service.structIvt.dao.StIvtIostordailyBcp;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 仓库物流日表 服务类
* </p>
*
* @author generator
* @since 2023-05-10
*/
public interface IStIvtIostordailyBcpService extends IService<StIvtIostordailyBcp> {
}

View File

@@ -1,16 +0,0 @@
package org.nl.wms.storage_manage.semimanage.service.structIvt;
import org.nl.wms.storage_manage.semimanage.service.structIvt.dao.StIvtStructivtflowBcp;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 仓位库存变动记录表 服务类
* </p>
*
* @author generator
* @since 2023-05-10
*/
public interface IStIvtStructivtflowBcpService extends IService<StIvtStructivtflowBcp> {
}

View File

@@ -1,20 +0,0 @@
package org.nl.wms.storage_manage.semimanage.service.structIvt.impl;
import org.nl.wms.storage_manage.semimanage.service.structIvt.dao.StIvtIostordailyBcp;
import org.nl.wms.storage_manage.semimanage.service.structIvt.dao.mapper.StIvtIostordailyBcpMapper;
import org.nl.wms.storage_manage.semimanage.service.structIvt.IStIvtIostordailyBcpService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 仓库物流日表 服务实现类
* </p>
*
* @author generator
* @since 2023-05-10
*/
@Service
public class StIvtIostordailyBcpServiceImpl extends ServiceImpl<StIvtIostordailyBcpMapper, StIvtIostordailyBcp> implements IStIvtIostordailyBcpService {
}

View File

@@ -1,20 +0,0 @@
package org.nl.wms.storage_manage.semimanage.service.structIvt.impl;
import org.nl.wms.storage_manage.semimanage.service.structIvt.dao.StIvtStructivtflowBcp;
import org.nl.wms.storage_manage.semimanage.service.structIvt.dao.mapper.StIvtStructivtflowBcpMapper;
import org.nl.wms.storage_manage.semimanage.service.structIvt.IStIvtStructivtflowBcpService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 仓位库存变动记录表 服务实现类
* </p>
*
* @author generator
* @since 2023-05-10
*/
@Service
public class StIvtStructivtflowBcpServiceImpl extends ServiceImpl<StIvtStructivtflowBcpMapper, StIvtStructivtflowBcp> implements IStIvtStructivtflowBcpService {
}