Merge remote-tracking branch 'origin/main'

# Conflicts:
#	ruoyi-ui/src/views/search/ViewOutJobFlow/index.vue
#	ruoyi-ui/src/views/search/ViewStockoutHistory/index.vue
This commit is contained in:
猫猫guowen
2026-01-09 17:10:30 +08:00
54 changed files with 2291 additions and 2049 deletions

View File

@@ -2,6 +2,7 @@ package com.ruoyi.api.controller;
import com.ruoyi.api.service.IToErpService;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.log.service.IRequestLogService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -16,13 +17,21 @@ public class ToErpApiController {
@Autowired
private IToErpService toErpService;
@Autowired
private IRequestLogService requestLogService;
/**
* 接收入出库通知单
*/
@PostMapping("/receiveDeliveryNotice")
@ResponseBody
public AjaxResult receiveDeliveryNotice(@RequestBody DeliveryNoticeVo deliveryNoticeVo) {
return toErpService.receiveDeliveryNotice(deliveryNoticeVo);
AjaxResult ajaxResult = toErpService.receiveDeliveryNotice(deliveryNoticeVo);
requestLogService.insertRequestLog(requestLogService.getRequestLog(deliveryNoticeVo.toString(), "接收入出库通知单", ajaxResult));
return ajaxResult;
}
@@ -30,7 +39,9 @@ public class ToErpApiController {
* 回传其他出入库单
*/
// @Scheduled(fixedDelay = 1500)
public void callbackTransferBill() {
toErpService.callbackTransferBill();
@RequestMapping("/callbackDeliveryNotice")
@ResponseBody
public AjaxResult callbackDeliveryNotice(String billNo) {
return toErpService.callbackDeliveryNotice(billNo);
}
}

View File

@@ -13,8 +13,12 @@ import lombok.ToString;
@NoArgsConstructor
@ToString
public class DeliveryNoticeItemVo {
/** 行号 */
private String lineNo;
/** 单据号 */
private String billNo;
/** 存货编码 */
private String inventoryCode;
/** 存货名称 */

View File

@@ -12,7 +12,7 @@ public interface IToErpService {
AjaxResult receiveDeliveryNotice(DeliveryNoticeVo deliveryNoticeVo);
void callbackTransferBill();
AjaxResult callbackDeliveryNotice(String billNo);
AjaxResult createWorkshopInboundOrder(BasProduct basProduct);
}

View File

@@ -14,6 +14,8 @@ import com.ruoyi.in.stockin.domain.InStockin;
import com.ruoyi.in.stockin.service.IInStockinService;
import com.ruoyi.in.stockindetail.domain.InStockinDetail;
import com.ruoyi.in.stockindetail.service.IInStockinDetailService;
import com.ruoyi.in.stockinfinish.domain.InStockinFinish;
import com.ruoyi.in.stockinfinish.service.IInStockinFinishService;
import com.ruoyi.job.mydojob.service.IMydoJobService;
import com.ruoyi.job.mydojobdetail.domain.MydoJobDetail;
import com.ruoyi.job.mydojobdetail.service.IMydoJobDetailService;
@@ -25,7 +27,9 @@ import com.ruoyi.out.outStockoutDetail.domain.OutStockoutDetail;
import com.ruoyi.out.outStockoutDetail.service.IOutStockoutDetailService;
import com.ruoyi.out.outStockoutDetail.mapper.OutStockoutDetailMapper;
import com.ruoyi.out.outStockout.mapper.OutStockoutMapper;
import io.swagger.v3.oas.models.security.SecurityScheme;
import org.apache.pdfbox.pdmodel.interactive.viewerpreferences.PDViewerPreferences;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -65,6 +69,9 @@ public class ToErpServiceImpl implements IToErpService {
@Autowired
private IOutStockoutDetailService outStockoutDetailService;
@Autowired
private IInStockinFinishService inStockinFinishService;
private static final String TO_ERP_URL = "http://192.168.1.100:8080/api/";
//todo 需要调试
@@ -119,6 +126,9 @@ public class ToErpServiceImpl implements IToErpService {
if ("2".equals(opType) && exist == null) {
return AjaxResult.error("单据不存在,无法修改");
}
if("1".equals(opType) && exist != null){
return AjaxResult.error("单据已存在,请勿重复添加");
}
if (exist != null && "3".equals(exist.getStatus()) && "2".equals(opType)) {
return AjaxResult.error("单据已执行,禁止修改");
}
@@ -149,12 +159,12 @@ public class ToErpServiceImpl implements IToErpService {
inStockinDetailService.deleteInStockinDetailByStockinGuid(inStockin.getStockinGuid());
}
List<DeliveryNoticeItemVo> items = deliveryNoticeVo.getDetailList();
List<InStockinDetail> detailList = new ArrayList<>();
int i = 1;
for (DeliveryNoticeItemVo item : items) {
InStockinDetail detail = new InStockinDetail();
detail.setStockinGuid(inStockin.getStockinGuid());
detail.setStockinDetailId(item.getLineNo());
detail.setStockinDetailId(inStockin.getStockinId()+"-"+item.getLineNo());
detail.setStockinId(inStockin.getStockinId());
detail.setProductId(item.getInventoryCode());
detail.setProductName(item.getInventoryName());
@@ -162,13 +172,17 @@ public class ToErpServiceImpl implements IToErpService {
detail.setUnit(item.getUnit());
detail.setQuantity(item.getQuantity());
detail.setLotNo(item.getLotNo());
detail.setStockStatus("0");
detail.setSpare1(item.getLevelRelation());
detail.setSpare2(item.getUpperMaterial());
detail.setSpare3(item.getTopMaterial());
detail.setSpare6(item.getLineNo());
detail.setRemark(item.getRemark());
detail.setAssignNum("0");
detail.setScanNum("0");
detailList.add(detail);
i++;
inStockinDetailService.insertInStockinDetail(detail);
}
inStockinDetailService.insertInStockinDetailList(detailList);
return AjaxResult.success();
}
}
@@ -182,14 +196,14 @@ public class ToErpServiceImpl implements IToErpService {
// 删除操作(操作类型3)
if ("3".equals(opType)) {
if (exist == null) {
return AjaxResult.success();
return AjaxResult.error("单据不存在");
}
if ("3".equals(exist.getStatus())) {
return AjaxResult.error("单据已完成,禁止删除");
return AjaxResult.error("单据已执行,禁止删除");
}
OutStockoutDetail q = new OutStockoutDetail();
q.setStockoutId(deliveryNoticeVo.getBillNo());
List<OutStockoutDetail> details = outStockoutDetailService.selectOutStockoutDetailList(q);
OutStockoutDetail outStockoutDetail = new OutStockoutDetail();
outStockoutDetail.setStockoutId(deliveryNoticeVo.getBillNo());
List<OutStockoutDetail> details = outStockoutDetailService.selectOutStockoutDetailList(outStockoutDetail);
if (details != null && !details.isEmpty()) {
String[] ids = details.stream().map(OutStockoutDetail::getStockoutDetailId).toArray(String[]::new);
outStockoutDetailService.deleteOutStockoutDetailByStockoutDetailIds(ids);
@@ -203,15 +217,19 @@ public class ToErpServiceImpl implements IToErpService {
if ("2".equals(opType) && exist == null) {
return AjaxResult.error("单据不存在,无法修改");
}
if (exist != null && "3".equals(exist.getStatus())) {
return AjaxResult.error("单据已完成,禁止修改");
if ("1".equals(opType) && exist != null){
return AjaxResult.error("单据已存在,请勿重复添加");
}
if (exist != null && "3".equals(exist.getStatus()) && "2".equals(opType) ) {
return AjaxResult.error("单据已执行,禁止修改");
}
OutStockout out = exist != null ? exist : new OutStockout();
if (exist == null) {
out.setStockoutGuid(UUID.randomUUID().toString());
}
out.setStockoutId(deliveryNoticeVo.getBillNo());
out.setOutType(deliveryNoticeVo.getOutType());
out.setOutType(deliveryNoticeVo.getBillType());
out.setCreateDate(deliveryNoticeVo.getBillDate());
out.setCreateManId(deliveryNoticeVo.getCreateMan());
out.setStatus("1");
@@ -219,6 +237,13 @@ public class ToErpServiceImpl implements IToErpService {
out.setStockoutSource("1");
out.setDepartmentNo(deliveryNoticeVo.getProjectNo());
out.setCustomerNo(deliveryNoticeVo.getCustomerId());
out.setClassNowId(deliveryNoticeVo.getCustomerName());
out.setSpare1(deliveryNoticeVo.getContractNo());//合同号
out.setSpare2(deliveryNoticeVo.getSalesOrderNo());//销售订单号
out.setSpare3(deliveryNoticeVo.getApproveDate());//审核时间
out.setSpare4(deliveryNoticeVo.getApproveMan());//审核人
out.setSpare5(deliveryNoticeVo.getRemark());
if (exist == null) {
outStockoutService.insertOutStockout(out);
} else {
@@ -231,22 +256,33 @@ public class ToErpServiceImpl implements IToErpService {
outStockoutDetailService.deleteOutStockoutDetailByStockoutDetailIds(ids);
}
}
int i = 1;
for (DeliveryNoticeItemVo item : deliveryNoticeVo.getDetailList()) {
OutStockoutDetail d = new OutStockoutDetail();
String line = item.getLineNo() != null ? item.getLineNo() : String.valueOf(i);
d.setStockoutDetailId(out.getStockoutId()+"-"+line);
d.setStockoutDetailId(out.getStockoutId()+"-"+item.getLineNo());
d.setStockoutGuid(out.getStockoutGuid());
d.setStockoutId(out.getStockoutId());
d.setProductId(item.getInventoryCode());
d.setProductId(item.getInventoryCode());
d.setLotNo(item.getLotNo());
d.setSpec(item.getSpecModel());
d.setUnit(item.getUnit());
d.setSpare1(item.getLevelRelation());
d.setSpare2(item.getUpperMaterial());
d.setSpare3(item.getTopMaterial());
d.setSpare6(item.getLineNo());
d.setRemark(item.getRemark());
try {
d.setQuantity(new BigDecimal(item.getQuantity()));
d.setAllotQuantity(BigDecimal.ZERO);
d.setAssignNum(BigDecimal.ZERO);
} catch (Exception e) {
d.setQuantity(BigDecimal.ZERO);
}
outStockoutDetailService.insertOutStockoutDetail(d);
i++;
}
return AjaxResult.success();
}
@@ -257,19 +293,63 @@ public class ToErpServiceImpl implements IToErpService {
@Override
public void callbackTransferBill() {
TransferBillCallback param = new TransferBillCallback();
param.setStatus("0");
List<TransferBillCallback> list = transferBillCallbackService.selectTransferBillCallbackList(param);
for (TransferBillCallback transferBillCallback : list) {
//todo 请求其他出入库单回传接口
AjaxResult otherInOutboundOrder = createOtherInOutboundOrder(transferBillCallback);
if (otherInOutboundOrder.isSuccess()){
transferBillCallback.setStatus("1");
transferBillCallback.setFinishTime(DateUtil.formatDateTime(new Date()));
transferBillCallbackService.updateTransferBillCallback(transferBillCallback);
public AjaxResult callbackDeliveryNotice(String billNo) {
InStockin inStockin = null;
inStockin = inStockinService.selectInStockinByStockinId(billNo);
if(inStockin==null) {
InStockinFinish inStockinFinish = inStockinFinishService.selectInStockinFinishByStockinId(billNo);
if (inStockinFinish == null) {
return AjaxResult.error("单据不存在");
}else{
//将inStockinFinish对象中的所有值赋给inStockin
inStockin = new InStockin();
BeanUtils.copyProperties(inStockinFinish, inStockin);
}
}
DeliveryNoticeVo deliveryNoticeVo = new DeliveryNoticeVo();
deliveryNoticeVo.setBillNo(inStockin.getStockinId());
deliveryNoticeVo.setBillType(inStockin.getInType());
deliveryNoticeVo.setBillDate(inStockin.getCreateDate());
deliveryNoticeVo.setCreateMan(inStockin.getCreateManId());
deliveryNoticeVo.setWarehouseId(inStockin.getWarehouseId());
deliveryNoticeVo.setProjectNo(inStockin.getDepartmentNo());
deliveryNoticeVo.setCustomerId(inStockin.getSupplierNo());
deliveryNoticeVo.setCustomerName(inStockin.getClassNo()); // 对应receiveDeliveryNotice中的映射
deliveryNoticeVo.setContractNo(inStockin.getSpare1());
deliveryNoticeVo.setSalesOrderNo(inStockin.getSpare2());
deliveryNoticeVo.setApproveDate(inStockin.getSpare3());
deliveryNoticeVo.setApproveMan(inStockin.getSpare4());
deliveryNoticeVo.setRemark(inStockin.getSpare5());
InStockinDetail inStockinDetailParam = new InStockinDetail();
inStockinDetailParam.setStockinId(billNo);
List<InStockinDetail> inStockinDetails = inStockinDetailService.selectInStockinDetailList(inStockinDetailParam);
List<DeliveryNoticeItemVo> detailList = new ArrayList<>();
if (inStockinDetails != null && !inStockinDetails.isEmpty()) {
for (InStockinDetail detail : inStockinDetails) {
DeliveryNoticeItemVo item = new DeliveryNoticeItemVo();
item.setLineNo(detail.getStockinDetailId());
item.setBillNo(detail.getStockinId());
item.setInventoryCode(detail.getProductId());
item.setInventoryName(detail.getProductName());
item.setSpecModel(detail.getSpec());
item.setUnit(detail.getUnit());
item.setQuantity(detail.getAssignNum());
item.setLotNo(detail.getLotNo());
item.setLevelRelation(detail.getSpare1());
item.setUpperMaterial(detail.getSpare2());
item.setTopMaterial(detail.getSpare3());
item.setRemark(detail.getRemark());
detailList.add(item);
}
}
deliveryNoticeVo.setDetailList(detailList);
return AjaxResult.success(deliveryNoticeVo);
}
@Override

View File

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

View File

@@ -175,7 +175,7 @@ public class CheckStockinServiceImpl implements ICheckStockinService {
checkStockin.setStatus("1");
checkStockin.setStockSource("0");
checkStockin.setCheckType(checkStockin.getCheckType());
//checkStockin.setErpBill(checkStockin.getErpBill());
checkStockin.setErpBill(checkStockin.getErpBill());
if ("1".equals(checkStockin.getCheckType())) {
//物料盘点
for (int i = 0; i < detailList.size(); i++) {

View File

@@ -20,6 +20,9 @@ public interface InStockinMapper
*/
public InStockin selectInStockinByStockinGuid(String stockinGuid);
public InStockin selectInStockinByStockinId(String stockinId);
/**
* 查询入库单据列表
*

View File

@@ -21,6 +21,7 @@ public interface IInStockinService
* @return 入库单据
*/
public InStockin selectInStockinByStockinGuid(String stockinGuid);
public InStockin selectInStockinByStockinId(String stockinId);
/**
* 查询入库单据列表

View File

@@ -50,6 +50,11 @@ public class InStockinServiceImpl implements IInStockinService
return inStockinMapper.selectInStockinByStockinGuid(stockinGuid);
}
@Override
public InStockin selectInStockinByStockinId(String stockinId) {
return inStockinMapper.selectInStockinByStockinId(stockinId);
}
/**
* 查询入库单据列表
*

View File

@@ -20,6 +20,7 @@ public interface InStockinFinishMapper
* @return 历史入库单据主信息
*/
public InStockinFinish selectInStockinFinishByStockinGuid(String stockinGuid);
public InStockinFinish selectInStockinFinishByStockinId(String stockinId);
/**
* 查询历史入库单据主信息列表

View File

@@ -20,6 +20,7 @@ public interface IInStockinFinishService
* @return 历史入库单据主信息
*/
public InStockinFinish selectInStockinFinishByStockinGuid(String stockinGuid);
public InStockinFinish selectInStockinFinishByStockinId(String stockinId);
/**
* 查询历史入库单据主信息列表

View File

@@ -34,6 +34,13 @@ public class InStockinFinishServiceImpl implements IInStockinFinishService
return inStockinFinishMapper.selectInStockinFinishByStockinGuid(stockinGuid);
}
@Override
public InStockinFinish selectInStockinFinishByStockinId(String stockinId)
{
return inStockinFinishMapper.selectInStockinFinishByStockinId(stockinId);
}
/**
* 查询历史入库单据主信息列表
*

View File

@@ -62,11 +62,9 @@ public class RequestLogServiceImpl implements IRequestLogService
@Override
public int insertRequestLog(RequestLog requestLog)
{
if (requestLog.getIsSuccessful().equals("1")){
return requestLogMapper.insertRequestLog(requestLog);
}else {
return 0;
}
}
/**

View File

@@ -82,6 +82,15 @@ public class OutStockout extends BaseEntity
@Excel(name = "确认时间")
private String finishDate;
private String spare1;
private String spare2;
private String spare3;
private String spare4;
private String spare5;
private String customerName;
@@ -299,24 +308,76 @@ public class OutStockout extends BaseEntity
return erpStockoutId;
}
public String getSpare1() {
return spare1;
}
public void setSpare1(String spare1) {
this.spare1 = spare1;
}
public String getSpare2() {
return spare2;
}
public void setSpare2(String spare2) {
this.spare2 = spare2;
}
public String getSpare3() {
return spare3;
}
public void setSpare3(String spare3) {
this.spare3 = spare3;
}
public String getSpare4() {
return spare4;
}
public void setSpare4(String spare4) {
this.spare4 = spare4;
}
public String getSpare5() {
return spare5;
}
public void setSpare5(String spare5) {
this.spare5 = spare5;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("stockoutGuid", getStockoutGuid())
.append("stockoutId", getStockoutId())
.append("outType", getOutType())
.append("createDate", getCreateDate())
.append("departmentNo", getDepartmentNo())
.append("customerNo", getCustomerNo())
.append("createManId", getCreateManId())
.append("status", getStatus())
.append("stockoutSource", getStockoutSource())
.append("warehouseId", getWarehouseId())
.append("classNowId", getClassNowId())
.append("exitId", getExitId())
.append("carNumber", getCarNumber())
.append("FID", getFID())
.append("erpStockoutId", getErpStockoutId())
.toString();
return "OutStockout{" +
"stockoutGuid='" + stockoutGuid + '\'' +
", stockoutId='" + stockoutId + '\'' +
", outType='" + outType + '\'' +
", createDate='" + createDate + '\'' +
", departmentNo='" + departmentNo + '\'' +
", customerNo='" + customerNo + '\'' +
", createManId='" + createManId + '\'' +
", status='" + status + '\'' +
", stockoutSource='" + stockoutSource + '\'' +
", warehouseId='" + warehouseId + '\'' +
", classNowId='" + classNowId + '\'' +
", exitId='" + exitId + '\'' +
", carNumber='" + carNumber + '\'' +
", FID='" + FID + '\'' +
", erpStockoutId='" + erpStockoutId + '\'' +
", startDate='" + startDate + '\'' +
", finishDate='" + finishDate + '\'' +
", spare1='" + spare1 + '\'' +
", spare2='" + spare2 + '\'' +
", spare3='" + spare3 + '\'' +
", spare4='" + spare4 + '\'' +
", spare5='" + spare5 + '\'' +
", customerName='" + customerName + '\'' +
", warehouseName='" + warehouseName + '\'' +
", productId='" + productId + '\'' +
", productName='" + productName + '\'' +
", typeData=" + typeData +
'}';
}
}

View File

@@ -171,6 +171,108 @@ public class OutStockoutDetail extends BaseEntity
@Excel(name = "订单号")
private String orderId;
@Excel(name = "型号")
private String spare1;
/** 备用字段2 */
@Excel(name = "净重")
private String spare2;
/** 备用字段3 */
@Excel(name = "颜色")
private String spare3;
/** 备用字段4 */
@Excel(name = "序列号")
private String spare4;
/** 备用字段5 */
@Excel(name = "电压")
private String spare5;
/** 备用字段6 */
@Excel(name = "功率")
private String spare6;
@Excel(name = "相位")
private String spare7;
@Excel(name = "毛重")
private String spare8;
private String spare9;
public String getSpare1() {
return spare1;
}
public void setSpare1(String spare1) {
this.spare1 = spare1;
}
public String getSpare2() {
return spare2;
}
public void setSpare2(String spare2) {
this.spare2 = spare2;
}
public String getSpare3() {
return spare3;
}
public void setSpare3(String spare3) {
this.spare3 = spare3;
}
public String getSpare4() {
return spare4;
}
public void setSpare4(String spare4) {
this.spare4 = spare4;
}
public String getSpare5() {
return spare5;
}
public void setSpare5(String spare5) {
this.spare5 = spare5;
}
public String getSpare6() {
return spare6;
}
public void setSpare6(String spare6) {
this.spare6 = spare6;
}
public String getSpare7() {
return spare7;
}
public void setSpare7(String spare7) {
this.spare7 = spare7;
}
public String getSpare8() {
return spare8;
}
public void setSpare8(String spare8) {
this.spare8 = spare8;
}
public String getSpare9() {
return spare9;
}
public void setSpare9(String spare9) {
this.spare9 = spare9;
}
public String getVoltage() {
return voltage;
}

View File

@@ -54,7 +54,7 @@ public class OutStockoutDetailServiceImpl implements IOutStockoutDetailService
@Override
public int insertOutStockoutDetail(OutStockoutDetail outStockoutDetail)
{
outStockoutDetail.setCreateTime(DateUtils.getNowDate());
// outStockoutDetail.setCreateTime(DateUtils.getNowDate());
return outStockoutDetailMapper.insertOutStockoutDetail(outStockoutDetail);
}

View File

@@ -25,7 +25,7 @@ import com.ruoyi.common.core.page.TableDataInfo;
* 库存物资Controller
*
* @author ruoyi
* @date 2025-09-12
* @date 2026-01-06
*/
@RestController
@RequestMapping("/out/productAndStock")
@@ -37,7 +37,7 @@ public class ViewProductAndStockController extends BaseController
/**
* 查询库存物资列表
*/
@PreAuthorize("@ss.hasPermi('out:productAndStock:list')")
@PreAuthorize("@ss.hasPermi('productAndStock:productAndStock:list')")
@GetMapping("/list")
public TableDataInfo list(ViewProductAndStock viewProductAndStock)
{
@@ -45,10 +45,11 @@ public class ViewProductAndStockController extends BaseController
List<ViewProductAndStock> list = viewProductAndStockService.selectViewProductAndStockList(viewProductAndStock);
return getDataTable(list);
}
/**
* 查询库存物资列表
*/
@PreAuthorize("@ss.hasPermi('out:productAndStock:list')")
@PreAuthorize("@ss.hasPermi('productAndStock:productAndStock:list')")
@GetMapping("/pd/list")
public TableDataInfo pdList(ViewProductAndStock viewProductAndStock)
{
@@ -60,7 +61,7 @@ public class ViewProductAndStockController extends BaseController
/**
* 导出库存物资列表
*/
@PreAuthorize("@ss.hasPermi('out:productAndStock:export')")
@PreAuthorize("@ss.hasPermi('productAndStock:productAndStock:export')")
@Log(title = "库存物资", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, ViewProductAndStock viewProductAndStock)
@@ -73,7 +74,7 @@ public class ViewProductAndStockController extends BaseController
/**
* 获取库存物资详细信息
*/
@PreAuthorize("@ss.hasPermi('out:productAndStock:query')")
@PreAuthorize("@ss.hasPermi('productAndStock:productAndStock:query')")
@GetMapping(value = "/{onlyIdentity}")
public AjaxResult getInfo(@PathVariable("onlyIdentity") Long onlyIdentity)
{
@@ -83,7 +84,7 @@ public class ViewProductAndStockController extends BaseController
/**
* 新增库存物资
*/
@PreAuthorize("@ss.hasPermi('out:productAndStock:add')")
@PreAuthorize("@ss.hasPermi('productAndStock:productAndStock:add')")
@Log(title = "库存物资", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody ViewProductAndStock viewProductAndStock)
@@ -94,7 +95,7 @@ public class ViewProductAndStockController extends BaseController
/**
* 修改库存物资
*/
@PreAuthorize("@ss.hasPermi('out:productAndStock:edit')")
@PreAuthorize("@ss.hasPermi('productAndStock:productAndStock:edit')")
@Log(title = "库存物资", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody ViewProductAndStock viewProductAndStock)
@@ -105,7 +106,7 @@ public class ViewProductAndStockController extends BaseController
/**
* 删除库存物资
*/
@PreAuthorize("@ss.hasPermi('out:productAndStock:remove')")
@PreAuthorize("@ss.hasPermi('productAndStock:productAndStock:remove')")
@Log(title = "库存物资", businessType = BusinessType.DELETE)
@DeleteMapping("/{onlyIdentitys}")
public AjaxResult remove(@PathVariable Long[] onlyIdentitys)

View File

@@ -1,6 +1,5 @@
package com.ruoyi.out.productAndStock.domain;
import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
@@ -8,9 +7,9 @@ import com.ruoyi.common.core.domain.BaseEntity;
/**
* 库存物资对象 view_product_and_stock
*
*
* @author ruoyi
* @date 2025-09-12
* @date 2026-01-06
*/
public class ViewProductAndStock extends BaseEntity
{
@@ -20,278 +19,226 @@ public class ViewProductAndStock extends BaseEntity
@Excel(name = "序号")
private Long onlyIdentity;
/** 品号 */
@Excel(name = "品号")
/** 物料编码 */
@Excel(name = "物料编码")
private String productId;
/** 批次号 */
@Excel(name = "批次号")
/** 批号 */
@Excel(name = "批号")
private String lotNo;
/** 品名 */
@Excel(name = "品名")
/** 物料名称 */
@Excel(name = "物料名称")
private String productName;
/** 数量 */
@Excel(name = "数量")
private BigDecimal quantity;
/** 库存数量 */
@Excel(name = "库存数量")
private String quantity;
/** 仓库 */
@Excel(name = "仓库")
/** 仓库编码 */
@Excel(name = "仓库编码")
private String warehouseId;
/** 规格 */
@Excel(name = "规格")
/** 供应商名称 */
@Excel(name = "供应商名称")
private String stackingId;
/** 层次关系 */
@Excel(name = "层次关系")
private String spare1;
/** 单位 */
@Excel(name = "单位")
/** 上层物料 */
@Excel(name = "上层物料")
private String spare2;
/** 顶层物料 */
@Excel(name = "顶层物料")
private String spare3;
/** 型号 */
@Excel(name = "型号")
/** 项目号 */
@Excel(name = "项目号")
private String spare4;
/** 颜色 */
@Excel(name = "颜色")
/** 合同号 */
@Excel(name = "合同号")
private String spare5;
/** 序列号 */
@Excel(name = "序列号")
/** 销售订单号 */
@Excel(name = "销售订单号")
private String spare6;
@Excel(name = "是否盘点")
private String spare7;
/** 电压 */
@Excel(name = "电压")
/** 供应商编码 */
@Excel(name = "供应商编码")
private String voltage;
/** 功率 */
@Excel(name = "功率")
/** 规格型号 */
@Excel(name = "规格型号")
private String power;
/** 相位 */
@Excel(name = "相位")
/** 计量单位 */
@Excel(name = "计量单位")
private String phase;
/** 净重 */
@Excel(name = "净重")
private BigDecimal netWeight;
/** 毛重 */
@Excel(name = "毛重")
private BigDecimal grossWeight;
/** 分销 */
@Excel(name = "分销")
private String distribution;
/** 机型 */
@Excel(name = "机型")
private String model;
/** 订单号 */
@Excel(name = "订单号")
private String orderId;
public String getSpare7() {
return spare7;
}
public void setSpare7(String spare7) {
this.spare7 = spare7;
}
public void setOnlyIdentity(Long onlyIdentity)
public void setOnlyIdentity(Long onlyIdentity)
{
this.onlyIdentity = onlyIdentity;
}
public Long getOnlyIdentity()
public Long getOnlyIdentity()
{
return onlyIdentity;
}
public void setProductId(String productId)
public void setProductId(String productId)
{
this.productId = productId;
}
public String getProductId()
public String getProductId()
{
return productId;
}
public void setLotNo(String lotNo)
public void setLotNo(String lotNo)
{
this.lotNo = lotNo;
}
public String getLotNo()
public String getLotNo()
{
return lotNo;
}
public void setProductName(String productName)
public void setProductName(String productName)
{
this.productName = productName;
}
public String getProductName()
public String getProductName()
{
return productName;
}
public void setQuantity(BigDecimal quantity)
public void setQuantity(String quantity)
{
this.quantity = quantity;
}
public BigDecimal getQuantity()
public String getQuantity()
{
return quantity;
}
public void setWarehouseId(String warehouseId)
public void setWarehouseId(String warehouseId)
{
this.warehouseId = warehouseId;
}
public String getWarehouseId()
public String getWarehouseId()
{
return warehouseId;
}
public void setSpare1(String spare1)
public void setStackingId(String stackingId)
{
this.stackingId = stackingId;
}
public String getStackingId()
{
return stackingId;
}
public void setSpare1(String spare1)
{
this.spare1 = spare1;
}
public String getSpare1()
public String getSpare1()
{
return spare1;
}
public void setSpare3(String spare3)
public void setSpare2(String spare2)
{
this.spare2 = spare2;
}
public String getSpare2()
{
return spare2;
}
public void setSpare3(String spare3)
{
this.spare3 = spare3;
}
public String getSpare3()
public String getSpare3()
{
return spare3;
}
public void setSpare4(String spare4)
public void setSpare4(String spare4)
{
this.spare4 = spare4;
}
public String getSpare4()
public String getSpare4()
{
return spare4;
}
public void setSpare5(String spare5)
public void setSpare5(String spare5)
{
this.spare5 = spare5;
}
public String getSpare5()
public String getSpare5()
{
return spare5;
}
public void setSpare6(String spare6)
public void setSpare6(String spare6)
{
this.spare6 = spare6;
}
public String getSpare6()
public String getSpare6()
{
return spare6;
}
public void setVoltage(String voltage)
public void setVoltage(String voltage)
{
this.voltage = voltage;
}
public String getVoltage()
public String getVoltage()
{
return voltage;
}
public void setPower(String power)
public void setPower(String power)
{
this.power = power;
}
public String getPower()
public String getPower()
{
return power;
}
public void setPhase(String phase)
public void setPhase(String phase)
{
this.phase = phase;
}
public String getPhase()
public String getPhase()
{
return phase;
}
public void setNetWeight(BigDecimal netWeight)
{
this.netWeight = netWeight;
}
public BigDecimal getNetWeight()
{
return netWeight;
}
public void setGrossWeight(BigDecimal grossWeight)
{
this.grossWeight = grossWeight;
}
public BigDecimal getGrossWeight()
{
return grossWeight;
}
public void setDistribution(String distribution)
{
this.distribution = distribution;
}
public String getDistribution()
{
return distribution;
}
public void setModel(String model)
{
this.model = model;
}
public String getModel()
{
return model;
}
public void setOrderId(String orderId)
{
this.orderId = orderId;
}
public String getOrderId()
{
return orderId;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
@@ -301,7 +248,9 @@ public class ViewProductAndStock extends BaseEntity
.append("productName", getProductName())
.append("quantity", getQuantity())
.append("warehouseId", getWarehouseId())
.append("stackingId", getStackingId())
.append("spare1", getSpare1())
.append("spare2", getSpare2())
.append("spare3", getSpare3())
.append("spare4", getSpare4())
.append("spare5", getSpare5())
@@ -309,11 +258,6 @@ public class ViewProductAndStock extends BaseEntity
.append("voltage", getVoltage())
.append("power", getPower())
.append("phase", getPhase())
.append("netWeight", getNetWeight())
.append("grossWeight", getGrossWeight())
.append("distribution", getDistribution())
.append("model", getModel())
.append("orderId", getOrderId())
.toString();
}
}

View File

@@ -7,7 +7,7 @@ import com.ruoyi.out.productAndStock.domain.ViewProductAndStock;
* 库存物资Mapper接口
*
* @author ruoyi
* @date 2025-09-12
* @date 2026-01-06
*/
public interface ViewProductAndStockMapper
{

View File

@@ -7,7 +7,7 @@ import com.ruoyi.out.productAndStock.domain.ViewProductAndStock;
* 库存物资Service接口
*
* @author ruoyi
* @date 2025-09-12
* @date 2026-01-06
*/
public interface IViewProductAndStockService
{
@@ -26,6 +26,14 @@ public interface IViewProductAndStockService
* @return 库存物资集合
*/
public List<ViewProductAndStock> selectViewProductAndStockList(ViewProductAndStock viewProductAndStock);
/**
* 查询库存物资列表
*
* @param viewProductAndStock 库存物资
* @return 库存物资集合
*/
List<ViewProductAndStock> selectViewProductAndStockPdList(ViewProductAndStock viewProductAndStock);
/**
* 新增库存物资
@@ -59,5 +67,4 @@ public interface IViewProductAndStockService
*/
public int deleteViewProductAndStockByOnlyIdentity(Long onlyIdentity);
List<ViewProductAndStock> selectViewProductAndStockPdList(ViewProductAndStock viewProductAndStock);
}

View File

@@ -11,7 +11,7 @@ import com.ruoyi.out.productAndStock.service.IViewProductAndStockService;
* 库存物资Service业务层处理
*
* @author ruoyi
* @date 2025-09-12
* @date 2026-01-06
*/
@Service
public class ViewProductAndStockServiceImpl implements IViewProductAndStockService
@@ -43,6 +43,18 @@ public class ViewProductAndStockServiceImpl implements IViewProductAndStockServi
return viewProductAndStockMapper.selectViewProductAndStockList(viewProductAndStock);
}
/**
* 查询库存物资列表
*
* @param viewProductAndStock 库存物资
* @return 库存物资
*/
@Override
public List<ViewProductAndStock> selectViewProductAndStockPdList(ViewProductAndStock viewProductAndStock) {
return viewProductAndStockMapper.selectViewProductAndStockPdList(viewProductAndStock);
}
/**
* 新增库存物资
*
@@ -90,10 +102,4 @@ public class ViewProductAndStockServiceImpl implements IViewProductAndStockServi
{
return viewProductAndStockMapper.deleteViewProductAndStockByOnlyIdentity(onlyIdentity);
}
@Override
public List<ViewProductAndStock> selectViewProductAndStockPdList(ViewProductAndStock viewProductAndStock) {
return viewProductAndStockMapper.selectViewProductAndStockPdList(viewProductAndStock);
}
}

View File

@@ -107,7 +107,10 @@ public class PdaServiceImp implements PdaService {
@Override
public AjaxResult confirmIn(String trayCode) {
//如果有出库作业,修改作业类型改为合盘入库类型
//如果有出库作业,修改作业类型改为合盘入库类型,合盘出库放历史表
//如果没有出库作业,正常生成入库作业
return null;
}

View File

@@ -1,5 +1,6 @@
package com.ruoyi.stock.freeze.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
@@ -90,6 +91,7 @@ public class BasStockFreezeRecord extends BaseEntity
private String productGuid;
// 创建时间
@Excel(name = "${stock.Maintain.createTime}", dateFormat = "yyyy-MM-dd HH:mm:ss", width = 30)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
@Override

View File

@@ -1,9 +1,11 @@
package com.ruoyi.stock.maintain.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
@@ -69,6 +71,7 @@ public class BasStockMaintainRecord extends BaseEntity
private String warehouseId;
@Excel(name = "${stock.Maintain.createTime}", dateFormat = "yyyy-MM-dd HH:mm:ss", width = 30)
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
@Override

View File

@@ -109,6 +109,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
${params.warehouseDataScope}
</if>
</where>
order by cs.create_date asc
</select>
<insert id="insertCheckStockinFinish" parameterType="CheckStockinFinish">

View File

@@ -80,6 +80,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
${params.warehouseDataScope}
</if>
</where>
order by cs.create_date asc
</select>
<select id="selectCheckStockinByStockGuid" parameterType="String" resultMap="CheckStockinResult">

View File

@@ -94,7 +94,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
isd.assign_num, isd.assign_num_x, isd.assign_num_j, isd.print_date, isd.stock_status,
isd.supplier_id, isd.customer_id, isd.unit, isd.spec, isd.spare1, isd.spare2, isd.spare3, isd.spare4,
isd.spare5, isd.spare6, isd.scan_num, isd.scan_num_x, isd.scan_num_j,
bp.product_name,
isd.product_name,
isd.spare7,isd.spare8,isd.spare9
from in_stockin_detail_finish isd
left join bas_product bp on bp.product_id = isd.product_id

View File

@@ -60,7 +60,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
isd.assign_num, isd.assign_num_x, isd.assign_num_j, isd.print_date, isd.stock_status,
isd.supplier_id, isd.customer_id, isd.unit, isd.spec, isd.spare1, isd.spare2, isd.spare3, isd.spare4,
isd.spare5, isd.spare6, isd.scan_num, isd.scan_num_x, isd.scan_num_j,
bp.product_name,
isd.product_name,
isd.spare7,isd.spare8,isd.spare9
from in_stockin_detail isd
left join bas_product bp on bp.product_id = isd.product_id
@@ -138,10 +138,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="spare7 != null">spare7,</if>
<if test="spare8 != null">spare8,</if>
<if test="spare9 != null">spare9,</if>
<if test="spec != null">spec,</if>
<if test="scanNum != null">scan_num,</if>
<if test="scanNumX != null">scan_num_x,</if>
<if test="scanNumJ != null">scan_num_j,</if>
<if test="productName != null">product_name,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="stockinDetailId != null">#{stockinDetailId},</if>
@@ -174,10 +175,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="spare7 != null">#{spare7},</if>
<if test="spare8 != null">#{spare8},</if>
<if test="spare9 != null">#{spare9},</if>
<if test="spec != null">#{spec},</if>
<if test="scanNum != null">#{scanNum},</if>
<if test="scanNumX != null">#{scanNumX},</if>
<if test="scanNumJ != null">#{scanNumJ},</if>
<if test="productName != null">#{productName},</if>
</trim>
</insert>
<insert id="insertInStockinDetailList">
@@ -290,6 +292,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="scanNum != null">scan_num = #{scanNum},</if>
<if test="scanNumX != null">scan_num_x = #{scanNumX},</if>
<if test="scanNumJ != null">scan_num_j = #{scanNumJ},</if>
<if test="productName != null">product_name = #{productName},</if>
</trim>
where stockin_detail_id = #{stockinDetailId}
</update>

View File

@@ -110,6 +110,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<include refid="selectInStockinFinishVo"/>
where is2.stockin_guid = #{stockinGuid}
</select>
<select id="selectInStockinFinishByStockinId" parameterType="String" resultMap="InStockinFinishResult">
<include refid="selectInStockinFinishVo"/>
where is2.stockin_id = #{stockinId}
</select>
<select id="selectInStockinFinishListByInStockin" resultMap="InStockinResult">
<include refid="selectInStockinFinishVo"/>
<where>
@@ -135,7 +142,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and is2.stockin_id in (
select distinct stockin_id from in_stockin_detail_finish isd
left join bas_product bp on isd.product_id = bp.product_id
where bp.product_name like concat('%',#{materialDesc},'%')
where isd.product_name like concat('%',#{materialDesc},'%')
)
</if>
<if test="lotNo !=null and lotNo!=''">

View File

@@ -84,7 +84,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and is2.stockin_id in (
select distinct stockin_id from in_stockin_detail isd
left join bas_product bp on isd.product_id = bp.product_id
where bp.product_name like concat('%',#{materialDesc},'%')
where isd.product_name like concat('%',#{materialDesc},'%')
)
</if>
<if test="lotNo !=null and lotNo!=''">
@@ -111,6 +111,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where is2.stockin_guid = #{stockinGuid}
</select>
<select id="selectInStockinByStockinId" parameterType="String" resultMap="InStockinResult">
<include refid="selectInStockinVo"/>
where is2.stockin_id = #{stockinId}
</select>
<insert id="insertInStockin" parameterType="InStockin">
insert into in_stockin
<trim prefix="(" suffix=")" suffixOverrides=",">

View File

@@ -139,7 +139,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
mjd.spare3,
mjd.spare4,
mjd.pick_quantity,
bp.product_name,
mjd.product_name,
mjd.spare5,
mjd.spare6,
mjd.spare7,

View File

@@ -73,7 +73,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
mjd.spare4,
mjd.pick_quantity,
mjd.out_quantity-mjd.pick_quantity as pick_quantity_real,
bp.product_name,
mjd.product_name,
mjd.spare5,
mjd.spare6,
mjd.spare7,

View File

@@ -104,7 +104,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</select>
<select id="selectMydoJobFinishListByMydoJob" parameterType="MydoJob" resultMap="MydoJobFinishResult">
<include refid="selectMydoJobFinishVo"/>
select distinct mj.job_id, mj.status, mj.on_line_type, mj.task_no, mj.supplier_id,
mj.customer_id, mj.department_id, mj.tray_code, mj.roadway_id, mj.cargo_space_id,
mj.target_roadway_id, mj.target_cargo_space_id, mj.line_id, mj.workshop_id, mj.priority,
mj.execution_phase, mj.in_or_out, mj.create_time, mj.start_time, mj.finish_time, mj.entrance_id,
mj.exit_id, mj.class_id, mj.warehouse_id, mj.fault_flag,
bs.supplier_name as supplier_name, bc.customer_name as customer_name,
bcs.cargo_space_name as cargo_space_name, bcst.cargo_space_name as target_cargo_space_name,
bw.warehouse_name as warehouse_name
from mydo_job_finish mj
left join bas_supplier bs on mj.supplier_id = bs.id
left join bas_customer bc on mj.customer_id = bc.id
left join bas_cargo_space bcs on mj.cargo_space_id = bcs.cargo_space_id
left join bas_cargo_space bcst on mj.target_cargo_space_id = bcst.cargo_space_id
left join bas_warehouse bw on mj.warehouse_id = bw.warehouse_id
left join mydo_job_detail mjd on mj.job_id = mjd.job_id
<where>
<if test="jobId != null and jobId != ''"> and mj.job_id = #{jobId}</if>
<if test="status != null and status != ''"> and mj.status = #{status}</if>
@@ -134,18 +149,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="inOut != null and inOut != '' and inOut =='1'.toString "> and mj.in_or_out &lt; 20 and mj.in_or_out not in(5,6)</if>
<if test="inOut != null and inOut != '' and inOut =='3'.toString "> and mj.in_or_out in (5,6)</if>
<if test="inOut != null and inOut != '' and inOut =='4'.toString "> and mj.in_or_out in (25,26)</if>
<if test="productId != null and productId != ''"> and mj.job_id in (select job_id from mydo_job_detail where product_id like concat('%', #{productId}, '%'))</if>
<if test = "inOutIds !=null and inOutIds.size() > 0">
and mj.in_or_out in
<foreach item="item" index="index" collection="inOutIds" separator="," open="(" close=")">
#{item}
</foreach>
</if>
<if test="params.warehouseDataScope != null and params.warehouseDataScope !=''">
${params.warehouseDataScope}
</if>
<if test="productId != null and productId != ''"> and mjd.product_id like concat('%', #{productId}, '%')</if>
order by mj.create_time desc
</where>
order by mj.create_time desc
</select>
<select id="selectMydoJobFinishByJobId" parameterType="String" resultMap="MydoJobFinishResult">

View File

@@ -35,7 +35,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="cargoSpaceName" column="cargo_space_name" />
<result property="targetCargoSpaceName" column="target_cargo_space_name" />
<result property="warehouseName" column="warehouse_name" />
<result property="departmentName" column="dept_name" />
</resultMap>
<sql id="selectMydoJobVo">
@@ -46,19 +46,33 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
mj.exit_id, mj.class_id, mj.warehouse_id, mj.fault_flag,
bs.supplier_name as supplier_name, bc.customer_name as customer_name,
bcs.cargo_space_name as cargo_space_name, bcst.cargo_space_name as target_cargo_space_name,
bw.warehouse_name as warehouse_name,sd.dept_name
bw.warehouse_name as warehouse_name
from mydo_job mj
left join bas_supplier bs on mj.supplier_id = bs.id
left join bas_customer bc on mj.customer_id = bc.id
left join bas_cargo_space bcs on mj.cargo_space_id = bcs.cargo_space_id
left join bas_cargo_space bcst on mj.target_cargo_space_id = bcst.cargo_space_id
left join bas_warehouse bw on mj.warehouse_id = bw.warehouse_id
left join sys_dept sd on mj.department_id = sd.dept_id
</sql>
<select id="selectMydoJobList" parameterType="MydoJob" resultMap="MydoJobResult">
<include refid="selectMydoJobVo"/>
select distinct mj.job_id, mj.status, mj.on_line_type, mj.task_no, mj.supplier_id,
mj.customer_id, mj.department_id, mj.tray_code, mj.roadway_id, mj.cargo_space_id,
mj.target_roadway_id, mj.target_cargo_space_id, mj.line_id, mj.workshop_id, mj.priority,
mj.execution_phase, mj.in_or_out, mj.create_time, mj.start_time, mj.finish_time, mj.entrance_id,
mj.exit_id, mj.class_id, mj.warehouse_id, mj.fault_flag,
bs.supplier_name as supplier_name, bc.customer_name as customer_name,
bcs.cargo_space_name as cargo_space_name, bcst.cargo_space_name as target_cargo_space_name,
bw.warehouse_name as warehouse_name
from mydo_job mj
left join bas_supplier bs on mj.supplier_id = bs.id
left join bas_customer bc on mj.customer_id = bc.id
left join bas_cargo_space bcs on mj.cargo_space_id = bcs.cargo_space_id
left join bas_cargo_space bcst on mj.target_cargo_space_id = bcst.cargo_space_id
left join bas_warehouse bw on mj.warehouse_id = bw.warehouse_id
left join mydo_job_detail mjd on mj.job_id = mjd.job_id
<where>
<if test="jobId != null and jobId != ''"> and mj.job_id = #{jobId}</if>
<if test="status != null and status != ''"> and mj.status = #{status}</if>
@@ -88,18 +102,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="inOut != null and inOut != '' and inOut =='1'.toString "> and mj.in_or_out &lt; 20 and mj.in_or_out not in(5,6)</if>
<if test="inOut != null and inOut != '' and inOut =='3'.toString "> and mj.in_or_out in (5,6)</if>
<if test="inOut != null and inOut != '' and inOut =='4'.toString "> and mj.in_or_out in (25,26)</if>
<if test="productId != null and productId != ''"> and mj.job_id in (select job_id from mydo_job_detail where product_id like concat('%', #{productId}, '%'))</if>
<if test = "inOutIds !=null and inOutIds.size() > 0">
and mj.in_or_out in
<foreach item="item" index="index" collection="inOutIds" separator="," open="(" close=")">
#{item}
</foreach>
</if>
<if test="params.warehouseDataScope != null and params.warehouseDataScope !=''">
${params.warehouseDataScope}
</if>
<if test="productId != null and productId != ''"> and mjd.product_id like concat('%', #{productId}, '%')</if>
</where>
order by mj.create_time desc
order by mj.create_time desc
</select>
<select id="selectMydoJobByJobId" parameterType="String" resultMap="MydoJobResult">

View File

@@ -33,18 +33,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="erpStockoutId" column="erp_stockout_id" />
<result property="unit" column="unit" />
<result property="spec" column="spec" />
<result property="supplierId" column="supplier_id" />
<result property="cargoNo" column="cargo_no" />
<result property="createTime" column="create_time" />
<result property="printDate" column="print_date" />
<result property="voltage" column="voltage" />
<result property="power" column="power" />
<result property="phase" column="phase" />
<result property="netWeight" column="net_weight" />
<result property="grossWeight" column="gross_weight" />
<result property="distribution" column="distribution" />
<result property="model" column="model" />
<result property="orderId" column="order_id" />
<result property="spare1" column="spare1" />
<result property="spare2" column="spare2" />
<result property="spare3" column="spare3" />
<result property="spare4" column="spare4" />
<result property="spare5" column="spare5" />
<result property="spare6" column="spare6" />
<result property="spare7" column="spare7" />
<result property="spare8" column="spare8" />
<result property="spare9" column="spare9" />
</resultMap>
@@ -52,9 +49,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
select d.stockout_detail_id, d.stockout_guid, d.stockout_id, d.lot_no, d.product_guid, d.product_id, d.quantity, d.quantity_x,
d.quantity_j, d.assign_num, d.assign_num_x, d.assign_num_j, d.allot_quantity, d.allot_quantity_x, d.allot_quantity_j,
d.price, d.remark, d.warehouse_id, d.out_id, d.bukechai_quantity, d.kechai_quantity, d.entryid, d.flat_quantity, d.fid,
d.erp_stockout_id, d.unit, d.spec, d.supplier_id, d.cargo_no, d.create_time, d.print_date,
d.voltage, d.power, d.phase, d.net_weight, d.gross_weight, d.distribution, d.model, d.order_id,
d.product_name
d.erp_stockout_id, d.unit, d.spec,
d.product_name ,d.spare1, d.spare2, d.spare3, d.spare4,d.spare5, d.spare6,d.spare7,d.spare8,d.spare9
from out_stockout_detail d
</sql>
@@ -88,17 +84,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="unit != null and unit != ''"> and d.unit like concat('%', #{unit}, '%')</if>
<if test="spec != null and spec != ''"> and d.spec like concat('%', #{spec}, '%')</if>
<if test="supplierId != null and supplierId != ''"> and d.supplier_id like concat('%', #{supplierId}, '%')</if>
<if test="cargoNo != null and cargoNo != ''"> and d.cargo_no = #{cargoNo}</if>
<if test="printDate != null and printDate != ''"> and d.print_date = #{printDate}</if>
<if test="voltage != null and voltage != ''"> and d.voltage = #{voltage}</if>
<if test="power != null and power != ''"> and d.power = #{power}</if>
<if test="phase != null and phase != ''"> and d.phase = #{phase}</if>
<if test="netWeight != null "> and d.net_weight = #{netWeight}</if>
<if test="grossWeight != null "> and d.gross_weight = #{grossWeight}</if>
<if test="distribution != null and distribution != ''"> and d.distribution = #{distribution}</if>
<if test="model != null and model != ''"> and d.model = #{model}</if>
<if test="orderId != null and orderId != ''"> and d.order_id = #{orderId}</if>
<if test="spare1 != null and spare1 != ''"> and isd.spare1 = #{spare1}</if>
<if test="spare2 != null and spare2 != ''"> and isd.spare2 = #{spare2}</if>
<if test="spare3 != null and spare3 != ''"> and isd.spare3 = #{spare3}</if>
<if test="spare4 != null and spare4 != ''"> and isd.spare4 = #{spare4}</if>
<if test="spare5 != null and spare5 != ''"> and isd.spare5 = #{spare5}</if>
<if test="spare6 != null and spare6 != ''"> and isd.spare6 = #{spare6}</if>
<if test="spare7 != null and spare7 != ''"> and isd.spare7 = #{spare7}</if>
<if test="spare8 != null and spare8 != ''"> and isd.spare8 = #{spare8}</if>
<if test="spare9 != null and spare9 != ''"> and isd.spare9 = #{spare9}</if>
</where>
</select>
@@ -138,61 +132,56 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="erpStockoutId != null">erp_stockout_id,</if>
<if test="unit != null">unit,</if>
<if test="spec != null">spec,</if>
<if test="supplierId != null">supplier_id,</if>
<if test="cargoNo != null">cargo_no,</if>
<if test="createTime != null">create_time,</if>
<if test="printDate != null">print_date,</if>
<if test="voltage != null">voltage,</if>
<if test="power != null">power,</if>
<if test="phase != null">phase,</if>
<if test="netWeight != null">net_weight,</if>
<if test="grossWeight != null">gross_weight,</if>
<if test="distribution != null">distribution,</if>
<if test="model != null">model,</if>
<if test="orderId != null">order_id,</if>
</trim>
<if test="spare1 != null">spare1,</if>
<if test="spare2 != null">spare2,</if>
<if test="spare3 != null">spare3,</if>
<if test="spare4 != null">spare4,</if>
<if test="spare5 != null">spare5,</if>
<if test="spare6 != null">spare6,</if>
<if test="spare7 != null">spare7,</if>
<if test="spare8 != null">spare8,</if>
<if test="spare9 != null">spare9,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="stockoutDetailId != null and stockoutDetailId != ''">#{stockoutDetailId},</if>
<if test="stockoutGuid != null">#{stockoutGuid},</if>
<if test="stockoutId != null">#{stockoutId},</if>
<if test="lotNo != null">#{lotNo},</if>
<if test="productGuid != null">#{productGuid},</if>
<if test="productId != null">#{productId},</if>
<if test="productName != null">#{productName},</if>
<if test="quantity != null">#{quantity},</if>
<if test="quantityX != null">#{quantityX},</if>
<if test="quantityJ != null">#{quantityJ},</if>
<if test="assignNum != null">#{assignNum},</if>
<if test="assignNumX != null">#{assignNumX},</if>
<if test="assignNumJ != null">#{assignNumJ},</if>
<if test="allotQuantity != null">#{allotQuantity},</if>
<if test="allotQuantityX != null">#{allotQuantityX},</if>
<if test="allotQuantityJ != null">#{allotQuantityJ},</if>
<if test="price != null">#{price},</if>
<if test="remark != null">#{remark},</if>
<if test="warehouseId != null">#{warehouseId},</if>
<if test="outId != null">#{outId},</if>
<if test="bukechaiQuantity != null">#{bukechaiQuantity},</if>
<if test="kechaiQuantity != null">#{kechaiQuantity},</if>
<if test="entryid != null">#{entryid},</if>
<if test="flatQuantity != null">#{flatQuantity},</if>
<if test="fid != null">#{fid},</if>
<if test="erpStockoutId != null">#{erpStockoutId},</if>
<if test="unit != null">#{unit},</if>
<if test="spec != null">#{spec},</if>
<if test="supplierId != null">#{supplierId},</if>
<if test="cargoNo != null">#{cargoNo},</if>
<if test="createTime != null">#{createTime},</if>
<if test="printDate != null">#{printDate},</if>
<if test="voltage != null">#{voltage},</if>
<if test="power != null">#{power},</if>
<if test="phase != null">#{phase},</if>
<if test="netWeight != null">#{netWeight},</if>
<if test="grossWeight != null">#{grossWeight},</if>
<if test="distribution != null">#{distribution},</if>
<if test="model != null">#{model},</if>
<if test="orderId != null">#{orderId},</if>
</trim>
<if test="stockoutDetailId != null and stockoutDetailId != ''">#{stockoutDetailId},</if>
<if test="stockoutGuid != null">#{stockoutGuid},</if>
<if test="stockoutId != null">#{stockoutId},</if>
<if test="lotNo != null">#{lotNo},</if>
<if test="productGuid != null">#{productGuid},</if>
<if test="productId != null">#{productId},</if>
<if test="productName != null">#{productName},</if>
<if test="quantity != null">#{quantity},</if>
<if test="quantityX != null">#{quantityX},</if>
<if test="quantityJ != null">#{quantityJ},</if>
<if test="assignNum != null">#{assignNum},</if>
<if test="assignNumX != null">#{assignNumX},</if>
<if test="assignNumJ != null">#{assignNumJ},</if>
<if test="allotQuantity != null">#{allotQuantity},</if>
<if test="allotQuantityX != null">#{allotQuantityX},</if>
<if test="allotQuantityJ != null">#{allotQuantityJ},</if>
<if test="price != null">#{price},</if>
<if test="remark != null">#{remark},</if>
<if test="warehouseId != null">#{warehouseId},</if>
<if test="outId != null">#{outId},</if>
<if test="bukechaiQuantity != null">#{bukechaiQuantity},</if>
<if test="kechaiQuantity != null">#{kechaiQuantity},</if>
<if test="entryid != null">#{entryid},</if>
<if test="flatQuantity != null">#{flatQuantity},</if>
<if test="fid != null">#{fid},</if>
<if test="erpStockoutId != null">#{erpStockoutId},</if>
<if test="unit != null">#{unit},</if>
<if test="spec != null">#{spec},</if>
<if test="spare1 != null">#{spare1},</if>
<if test="spare2 != null">#{spare2},</if>
<if test="spare3 != null">#{spare3},</if>
<if test="spare4 != null">#{spare4},</if>
<if test="spare5 != null">#{spare5},</if>
<if test="spare6 != null">#{spare6},</if>
<if test="spare7 != null">#{spare7},</if>
<if test="spare8 != null">#{spare8},</if>
<if test="spare9 != null">#{spare9},</if>
</trim>
</insert>
<update id="updateOutStockoutDetail" parameterType="OutStockoutDetail">
@@ -224,18 +213,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="erpStockoutId != null">erp_stockout_id = #{erpStockoutId},</if>
<if test="unit != null">unit = #{unit},</if>
<if test="spec != null">spec = #{spec},</if>
<if test="supplierId != null">supplier_id = #{supplierId},</if>
<if test="cargoNo != null">cargo_no = #{cargoNo},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="printDate != null">print_date = #{printDate},</if>
<if test="voltage != null">voltage = #{voltage},</if>
<if test="power != null">power = #{power},</if>
<if test="phase != null">phase = #{phase},</if>
<if test="netWeight != null">net_weight = #{netWeight},</if>
<if test="grossWeight != null">gross_weight = #{grossWeight},</if>
<if test="distribution != null">distribution = #{distribution},</if>
<if test="model != null">model = #{model},</if>
<if test="orderId != null">order_id = #{orderId},</if>
<if test="spare1 != null">spare1 = #{spare1},</if>
<if test="spare2 != null">spare2 = #{spare2},</if>
<if test="spare3 != null">spare3 = #{spare3},</if>
<if test="spare4 != null">spare4 = #{spare4},</if>
<if test="spare5 != null">spare5 = #{spare5},</if>
<if test="spare6 != null">spare6 = #{spare6},</if>
<if test="spare7 != null">spare7 = #{spare7},</if>
<if test="spare8 != null">spare8 = #{spare8},</if>
<if test="spare9 != null">spare9 = #{spare9},</if>
</trim>
where stockout_detail_id = #{stockoutDetailId}
</update>
@@ -255,10 +242,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
select d.stockout_detail_id, d.stockout_guid, d.stockout_id, d.lot_no, d.product_guid, d.product_id, d.quantity, d.quantity_x,
d.quantity_j, d.assign_num, d.assign_num_x, d.assign_num_j, d.allot_quantity, d.allot_quantity_x, d.allot_quantity_j,
d.price, d.remark, d.warehouse_id, d.out_id, d.bukechai_quantity, d.kechai_quantity, d.entryid, d.flat_quantity, d.fid,
d.erp_stockout_id, d.unit, d.spec, d.supplier_id, d.cargo_no, d.create_time, d.print_date,
d.voltage, d.power, d.phase, d.net_weight, d.gross_weight, d.distribution, d.model, d.order_id,
p.product_name
d.erp_stockout_id, d.unit, d.spec,
d.product_name,d.spare1, d.spare2, d.spare3, d.spare4,d.spare5, d.spare6,d.spare7,d.spare8,d.spare9
from out_stockout_detail d left join bas_product p on d.product_id = p.product_id
where d.stockout_guid = #{stockoutGuid}
</select>
</mapper>
</mapper>

View File

@@ -24,15 +24,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="finishDate" column="finish_date" />
<result property="warehouseName" column="warehouse_name" />
<result property="customerName" column="customer_name" />
<result property="spare1" column="spare1" />
<result property="spare2" column="spare2" />
<result property="spare3" column="spare3" />
<result property="spare4" column="spare4" />
<result property="spare5" column="spare5" />
</resultMap>
<sql id="selectOutStockoutVo">
select stockout_guid, stockout_id, out_type, create_date, department_no, customer_no, create_man_id, status, stockout_source, warehouse_id, class_now_id, exit_id, car_number, FID, erp_stockout_id,start_date,finish_date from out_stockout
select stockout_guid, stockout_id, out_type, create_date, department_no, customer_no, create_man_id, status, stockout_source, warehouse_id, class_now_id, exit_id, car_number, FID, erp_stockout_id,start_date,finish_date,spare1,spare2,spare3,spare4,spare5 from out_stockout
</sql>
<select id="selectOutStockoutList" parameterType="OutStockout" resultMap="OutStockoutResult">
select distinct o.stockout_guid, o.stockout_id, o.out_type, o.create_date, o.department_no, o.customer_no, o.create_man_id, o.status, o.stockout_source,
o.warehouse_id, o.class_now_id, o.exit_id, o.car_number, o.FID, o.erp_stockout_id,o.start_date,o.finish_date,bw.warehouse_name,bc.customer_name from out_stockout o
o.warehouse_id, o.class_now_id, o.exit_id, o.car_number, o.FID, o.erp_stockout_id,o.start_date,o.finish_date,bw.warehouse_name,bc.customer_name,o.spare1,o.spare2,o.spare3,o.spare4,o.spare5 from out_stockout o
left join bas_warehouse bw on bw.warehouse_id = o.warehouse_id
left join bas_customer bc on bc.customer_no = o.customer_no
left join out_stockout_detail d on d.stockout_id = o.stockout_id
@@ -57,6 +62,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="productId != null and productId != ''"> and d.product_id = #{productId}</if>
<if test="productName != null and productName != ''"> and d.product_name like concat('%', #{productName}, '%')</if>
<if test="customerName != null and customerName != ''"> and bc.customer_name like concat('%', #{customerName}, '%')</if>
<if test="spare1 != null and spare1 != ''"> and is2.spare1 like concat('%', #{spare1},'%')</if>
<if test="spare2 != null and spare2 != ''"> and is2.spare2 like concat('%', #{spare2},'%')</if>
<if test="spare4 != null and spare4 != ''"> and is2.spare4 = #{spare4}</if>
<if test="spare3 != null and spare3 != ''"> and is2.spare3 = #{spare3}</if>
<if test="spare5 != null and spare5 != ''"> and is2.spare5 = #{spare5}</if>
</where>
order by o.create_date desc
</select>
@@ -84,6 +95,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="carNumber != null">car_number,</if>
<if test="FID != null">FID,</if>
<if test="erpStockoutId != null">erp_stockout_id,</if>
<if test="spare1 != null">spare1,</if>
<if test="spare2 != null">spare2,</if>
<if test="spare4 != null">spare4,</if>
<if test="spare3 != null">spare3,</if>
<if test="spare5 != null">spare5,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="stockoutGuid != null and stockoutGuid != ''">#{stockoutGuid},</if>
@@ -101,6 +117,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="carNumber != null">#{carNumber},</if>
<if test="FID != null">#{FID},</if>
<if test="erpStockoutId != null">#{erpStockoutId},</if>
<if test="spare1 != null">#{spare1},</if>
<if test="spare2 != null">#{spare2},</if>
<if test="spare4 != null">#{spare4},</if>
<if test="spare3 != null">#{spare3},</if>
<if test="spare5 != null">#{spare5},</if>
</trim>
</insert>
@@ -123,6 +144,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="erpStockoutId != null">erp_stockout_id = #{erpStockoutId},</if>
<if test="startDate != null">start_date = #{startDate},</if>
<if test="finishDate != null">finish_date = #{finishDate},</if>
<if test="spare1 != null">spare1 = #{spare1},</if>
<if test="spare2 != null">spare2 = #{spare2},</if>
<if test="spare4 != null">spare4 = #{spare4},</if>
<if test="spare3 != null">spare3 = #{spare3},</if>
<if test="spare5 != null">spare5 = #{spare5},</if>
</trim>
where stockout_guid = #{stockoutGuid}
</update>
@@ -188,6 +214,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
o.erp_stockout_id,
o.start_date,
o.finish_date,
o.spare1,
o.spare2,
o.spare4,
o.spare3,
o.spare5,
bw.warehouse_name,
bc.customer_name
from out_stockout o

View File

@@ -11,52 +11,44 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="productName" column="product_name" />
<result property="quantity" column="quantity" />
<result property="warehouseId" column="warehouse_id" />
<result property="stackingId" column="stacking_id" />
<result property="spare1" column="spare1" />
<result property="spare2" column="spare2" />
<result property="spare3" column="spare3" />
<result property="spare4" column="spare4" />
<result property="spare5" column="spare5" />
<result property="spare6" column="spare6" />
<result property="spare7" column="spare7" />
<result property="voltage" column="voltage" />
<result property="power" column="power" />
<result property="phase" column="phase" />
<result property="netWeight" column="net_weight" />
<result property="grossWeight" column="gross_weight" />
<result property="distribution" column="distribution" />
<result property="model" column="model" />
<result property="orderId" column="order_id" />
</resultMap>
<sql id="selectViewProductAndStockVo">
select only_identity, product_id, lot_no, product_name, quantity, warehouse_id, spare1, spare3, spare4, spare5, spare6, voltage, power, phase, net_weight, gross_weight, distribution, model, order_id from view_product_and_stock
select only_identity, product_id, lot_no, product_name, quantity, warehouse_id, stacking_id, spare1, spare2, spare3, spare4, spare5, spare6, voltage, power, phase from view_product_and_stock
</sql>
<sql id="selectViewProductAndStockPdVo">
select only_identity, product_id, lot_no, product_name, quantity, warehouse_id, spare1, spare3, spare4, spare5, spare6, voltage, power, phase, net_weight, gross_weight, distribution, model, order_id, spare7 from view_product_and_stock_pd
select only_identity, product_id, lot_no, product_name, quantity, warehouse_id, stacking_id, spare1, spare2, spare3, spare4, spare5, spare6, voltage, power, phase from view_product_and_stock_pd
</sql>
<select id="selectViewProductAndStockList" parameterType="ViewProductAndStock" resultMap="ViewProductAndStockResult">
<include refid="selectViewProductAndStockVo"/>
<where>
<if test="onlyIdentity != null "> and only_identity = #{onlyIdentity}</if>
<if test="productId != null and productId != ''"> and product_id like concat('%', #{productId}, '%')</if>
<if test="lotNo != null and lotNo != ''"> and lot_no like concat('%', #{lotNo}, '%')</if>
<if test="productId != null and productId != ''"> and product_id = #{productId}</if>
<if test="lotNo != null and lotNo != ''"> and lot_no = #{lotNo}</if>
<if test="productName != null and productName != ''"> and product_name like concat('%', #{productName}, '%')</if>
<if test="quantity != null "> and quantity = #{quantity}</if>
<if test="quantity != null and quantity != ''"> and quantity = #{quantity}</if>
<if test="warehouseId != null and warehouseId != ''"> and warehouse_id = #{warehouseId}</if>
<if test="stackingId != null and stackingId != ''"> and stacking_id = #{stackingId}</if>
<if test="spare1 != null and spare1 != ''"> and spare1 = #{spare1}</if>
<if test="spare2 != null and spare2 != ''"> and spare2 = #{spare2}</if>
<if test="spare3 != null and spare3 != ''"> and spare3 = #{spare3}</if>
<if test="spare4 != null and spare4 != ''"> and spare4 = #{spare4}</if>
<if test="spare5 != null and spare5 != ''"> and spare5 = #{spare5}</if>
<if test="spare6 != null and spare6 != ''"> and spare6 = #{spare6}</if>
<if test="spare7 != null and spare7 != ''"> and spare7 = #{spare7}</if>
<if test="voltage != null and voltage != ''"> and voltage = #{voltage}</if>
<if test="power != null and power != ''"> and power = #{power}</if>
<if test="phase != null and phase != ''"> and phase = #{phase}</if>
<if test="netWeight != null "> and net_weight = #{netWeight}</if>
<if test="grossWeight != null "> and gross_weight = #{grossWeight}</if>
<if test="distribution != null and distribution != ''"> and distribution = #{distribution}</if>
<if test="model != null and model != ''"> and model = #{model}</if>
<if test="orderId != null and orderId != ''"> and order_id = #{orderId}</if>
</where>
</select>
@@ -64,29 +56,28 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<include refid="selectViewProductAndStockVo"/>
where only_identity = #{onlyIdentity}
</select>
<select id="selectViewProductAndStockPdList" parameterType="ViewProductAndStock" resultMap="ViewProductAndStockResult">
<select id="selectViewProductAndStockPdList" parameterType="ViewProductAndStock"
resultMap="ViewProductAndStockResult">
<include refid="selectViewProductAndStockPdVo"/>
<where>
<if test="onlyIdentity != null ">and only_identity = #{onlyIdentity}</if>
<if test="productId != null and productId != ''"> and product_id like concat('%', #{productId}, '%')</if>
<if test="lotNo != null and lotNo != ''"> and lot_no like concat('%', #{lotNo}, '%')</if>
<if test="productName != null and productName != ''"> and product_name like concat('%', #{productName}, '%')</if>
<if test="quantity != null ">and quantity = #{quantity}</if>
<if test="productId != null and productId != ''">and product_id = #{productId}</if>
<if test="lotNo != null and lotNo != ''">and lot_no = #{lotNo}</if>
<if test="productName != null and productName != ''">and product_name like concat('%', #{productName},
'%')
</if>
<if test="quantity != null and quantity != ''">and quantity = #{quantity}</if>
<if test="warehouseId != null and warehouseId != ''">and warehouse_id = #{warehouseId}</if>
<if test="stackingId != null and stackingId != ''">and stacking_id = #{stackingId}</if>
<if test="spare1 != null and spare1 != ''">and spare1 = #{spare1}</if>
<if test="spare2 != null and spare2 != ''">and spare2 = #{spare2}</if>
<if test="spare3 != null and spare3 != ''">and spare3 = #{spare3}</if>
<if test="spare4 != null and spare4 != ''">and spare4 = #{spare4}</if>
<if test="spare5 != null and spare5 != ''">and spare5 = #{spare5}</if>
<if test="spare6 != null and spare6 != ''">and spare6 = #{spare6}</if>
<if test="spare7 != null and spare7 != ''">and spare7 = #{spare7}</if>
<if test="voltage != null and voltage != ''">and voltage = #{voltage}</if>
<if test="power != null and power != ''">and power = #{power}</if>
<if test="phase != null and phase != ''">and phase = #{phase}</if>
<if test="netWeight != null ">and net_weight = #{netWeight}</if>
<if test="grossWeight != null ">and gross_weight = #{grossWeight}</if>
<if test="distribution != null and distribution != ''">and distribution = #{distribution}</if>
<if test="model != null and model != ''">and model = #{model}</if>
<if test="orderId != null and orderId != ''">and order_id = #{orderId}</if>
</where>
</select>
@@ -99,7 +90,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="productName != null">product_name,</if>
<if test="quantity != null">quantity,</if>
<if test="warehouseId != null">warehouse_id,</if>
<if test="stackingId != null">stacking_id,</if>
<if test="spare1 != null">spare1,</if>
<if test="spare2 != null">spare2,</if>
<if test="spare3 != null">spare3,</if>
<if test="spare4 != null">spare4,</if>
<if test="spare5 != null">spare5,</if>
@@ -107,11 +100,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="voltage != null">voltage,</if>
<if test="power != null">power,</if>
<if test="phase != null">phase,</if>
<if test="netWeight != null">net_weight,</if>
<if test="grossWeight != null">gross_weight,</if>
<if test="distribution != null">distribution,</if>
<if test="model != null">model,</if>
<if test="orderId != null">order_id,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="onlyIdentity != null">#{onlyIdentity},</if>
@@ -120,7 +108,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="productName != null">#{productName},</if>
<if test="quantity != null">#{quantity},</if>
<if test="warehouseId != null">#{warehouseId},</if>
<if test="stackingId != null">#{stackingId},</if>
<if test="spare1 != null">#{spare1},</if>
<if test="spare2 != null">#{spare2},</if>
<if test="spare3 != null">#{spare3},</if>
<if test="spare4 != null">#{spare4},</if>
<if test="spare5 != null">#{spare5},</if>
@@ -128,11 +118,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="voltage != null">#{voltage},</if>
<if test="power != null">#{power},</if>
<if test="phase != null">#{phase},</if>
<if test="netWeight != null">#{netWeight},</if>
<if test="grossWeight != null">#{grossWeight},</if>
<if test="distribution != null">#{distribution},</if>
<if test="model != null">#{model},</if>
<if test="orderId != null">#{orderId},</if>
</trim>
</insert>
@@ -144,7 +129,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="productName != null">product_name = #{productName},</if>
<if test="quantity != null">quantity = #{quantity},</if>
<if test="warehouseId != null">warehouse_id = #{warehouseId},</if>
<if test="stackingId != null">stacking_id = #{stackingId},</if>
<if test="spare1 != null">spare1 = #{spare1},</if>
<if test="spare2 != null">spare2 = #{spare2},</if>
<if test="spare3 != null">spare3 = #{spare3},</if>
<if test="spare4 != null">spare4 = #{spare4},</if>
<if test="spare5 != null">spare5 = #{spare5},</if>
@@ -152,11 +139,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="voltage != null">voltage = #{voltage},</if>
<if test="power != null">power = #{power},</if>
<if test="phase != null">phase = #{phase},</if>
<if test="netWeight != null">net_weight = #{netWeight},</if>
<if test="grossWeight != null">gross_weight = #{grossWeight},</if>
<if test="distribution != null">distribution = #{distribution},</if>
<if test="model != null">model = #{model},</if>
<if test="orderId != null">order_id = #{orderId},</if>
</trim>
where only_identity = #{onlyIdentity}
</update>

View File

@@ -104,7 +104,7 @@ public class SecurityConfig
// 静态资源,可匿名访问
.requestMatchers(HttpMethod.GET, "/", "/*.html", "/**.html", "/**.css", "/**.js", "/profile/**").permitAll()
.requestMatchers("/swagger-ui.html", "/v3/api-docs/**", "/swagger-ui/**", "/druid/**").permitAll()
.requestMatchers("/api/**","/api2wms/**").permitAll()
.requestMatchers("/api/**","/api2wms/**","api2erp/**").permitAll()
// 除上面外的所有请求全部需要鉴权认证
.anyRequest().authenticated();
})

View File

@@ -1,12 +1,12 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="100px">
<el-form-item label="客户编号" prop="customerNo">
<el-input v-model="queryParams.customerNo" placeholder="请输入客户编号" clearable
<el-form-item label="客商编号" prop="customerNo">
<el-input v-model="queryParams.customerNo" placeholder="请输入客商编号" clearable
@keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="客户名称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户名称" clearable
<el-form-item label="客商名称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客商名称" clearable
@keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="简称" prop="simpleName">
@@ -56,9 +56,9 @@
<el-table v-loading="loading" :data="BasCustomerList" @selection-change="handleSelectionChange" max-height="700">
<el-table-column type="selection" width="55" align="center"/>
<el-table-column width="120" label="客户编号" align="left" prop="customerNo"/>
<el-table-column width="120" label="客户类别" align="left" prop="customerGroupNo"/>
<el-table-column width="220" label="客户名称" align="left" prop="customerName"/>
<el-table-column width="120" label="客商编号" align="left" prop="customerNo"/>
<el-table-column width="120" label="客商类别" align="left" prop="customerGroupNo"/>
<el-table-column width="220" label="客商名称" align="left" prop="customerName"/>
<el-table-column width="120" label="简称" align="left" prop="simpleName"/>
<el-table-column width="120" label="是否可用" align="left" prop="useable">
<template slot-scope="scope">
@@ -69,11 +69,11 @@
<el-table-column width="120" label="业务部门" align="left" prop="businessDepartment"/>
<el-table-column width="120" label="业务员" align="left" prop="salesman"/>
<el-table-column width="120" label="助记码" align="left" prop="mnemonicCode"/>
<el-table-column width="120" label="客户类型" align="left" prop="type"/>
<el-table-column width="120" label="客商类型" align="left" prop="type"/>
<el-table-column width="120" label="纳税人识别号" align="left" prop="taxpayerRegistrationNumber"/>
<el-table-column width="120" label="财务组织" align="left" prop="organization"/>
<el-table-column width="120" label="上级客户" align="left" prop="supCustomer"/>
<el-table-column width="120" label="个人客户" align="left" prop="retailInvestor"/>
<el-table-column width="120" label="上级客商" align="left" prop="supCustomer"/>
<el-table-column width="120" label="个人客商" align="left" prop="retailInvestor"/>
<el-table-column width="120" label="国家/地区" align="left" prop="country"/>
<el-table-column width="120" label="时区" align="left" prop="timeZone"/>
<el-table-column width="120" label="数据格式" align="left" prop="dataFormat"/>
@@ -100,14 +100,14 @@
@pagination="getList"
/>
<!-- 添加或修改客户对话框 -->
<!-- 添加或修改客商对话框 -->
<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-item label="客户编号" prop="customerNo">
<el-input v-model="form.customerNo" placeholder="请输入客户编号"/>
<el-form-item label="客商编号" prop="customerNo">
<el-input v-model="form.customerNo" placeholder="请输入客商编号"/>
</el-form-item>
<el-form-item label="客户名称" prop="customerName">
<el-input v-model="form.customerName" placeholder="请输入客户名称"/>
<el-form-item label="客商名称" prop="customerName">
<el-input v-model="form.customerName" placeholder="请输入客商名称"/>
</el-form-item>
<el-form-item label="简称" prop="simpleName">
<el-input v-model="form.simpleName" placeholder="请输入简称"/>
@@ -134,8 +134,8 @@
<el-form-item label="助记码" prop="mnemonicCode">
<el-input v-model="form.mnemonicCode" placeholder="请输入助记码"/>
</el-form-item>
<el-form-item label="客户类型" prop="type">
<el-input v-model="form.type" placeholder="请输入客户类型"/>
<el-form-item label="客商类型" prop="type">
<el-input v-model="form.type" placeholder="请输入客商类型"/>
</el-form-item>
<el-form-item label="纳税人识别号" prop="taxpayerRegistrationNumber">
<el-input v-model="form.taxpayerRegistrationNumber" placeholder="请输入纳税人识别号"/>
@@ -143,11 +143,11 @@
<el-form-item label="财务组织" prop="organization">
<el-input v-model="form.organization" placeholder="请输入财务组织"/>
</el-form-item>
<el-form-item label="上级客户" prop="supCustomer">
<el-input v-model="form.supCustomer" placeholder="请输入上级客户"/>
<el-form-item label="上级客商" prop="supCustomer">
<el-input v-model="form.supCustomer" placeholder="请输入上级客商"/>
</el-form-item>
<el-form-item label="个人客户" prop="retailInvestor">
<el-input v-model="form.retailInvestor" placeholder="请输入个人客户"/>
<el-form-item label="个人客商" prop="retailInvestor">
<el-input v-model="form.retailInvestor" placeholder="请输入个人客商"/>
</el-form-item>
<el-form-item label="国家/地区" prop="country">
<el-input v-model="form.country" placeholder="请输入国家/地区"/>
@@ -196,7 +196,7 @@ export default {
showSearch: true,
// 总条数
total: 0,
// 客户管理表格数据
// 客商管理表格数据
BasCustomerList: [],
// 弹出层标题
title: "",
@@ -234,10 +234,10 @@ export default {
{required: true, message: "ID不能为空", trigger: "blur"}
],
customerNo: [
{required: true, message: "客户编号不能为空", trigger: "blur"}
{required: true, message: "客商编号不能为空", trigger: "blur"}
],
customerName: [
{required: true, message: "客户名称不能为空", trigger: "blur"}
{required: true, message: "客商名称不能为空", trigger: "blur"}
],
useable: [
{required: true, message: "是否可用不能为空", trigger: "blur"}
@@ -249,7 +249,7 @@ export default {
this.getList()
},
methods: {
/** 查询客户管理列表 */
/** 查询客商管理列表 */
getList() {
this.loading = true
listBasCustomer(this.queryParams).then(response => {
@@ -310,7 +310,7 @@ export default {
handleAdd() {
this.reset()
this.open = true
this.title = "添加客户"
this.title = "添加客商"
},
/** 修改按钮操作 */
handleUpdate(row) {
@@ -319,7 +319,7 @@ export default {
getBasCustomer(id).then(response => {
this.form = response.data
this.open = true
this.title = "修改客户"
this.title = "修改客商"
})
},
/** 提交按钮 */
@@ -345,7 +345,7 @@ export default {
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids
this.$modal.confirm('是否确认删除客户编号为"' + ids + '"的数据项?').then(function () {
this.$modal.confirm('是否确认删除客商编号为"' + ids + '"的数据项?').then(function () {
return delBasCustomer(ids)
}).then(() => {
this.getList()

View File

@@ -2,16 +2,19 @@
<div class="app-container">
<!-- 主表信息录入 -->
<el-form :model="formData" ref="formRef" size="small" :inline="true" label-width="68px" :rules="rules">
<!-- <el-form-item label="仓库" prop="warehouseId" required>-->
<!-- <el-select v-model="formData.warehouseId" placeholder="请选择仓库" clearable>-->
<!-- <el-option-->
<!-- v-for="dict in warehouseOptions"-->
<!-- :key="dict.warehouseId"-->
<!-- :label="dict.warehouseName"-->
<!-- :value="dict.warehouseId"-->
<!-- />-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<el-form-item label="仓库" prop="warehouseId" required>
<el-select v-model="formData.warehouseId" placeholder="请选择仓库" clearable>
<el-option
v-for="dict in warehouseOptions"
:key="dict.warehouseId"
:label="dict.warehouseName"
:value="dict.warehouseId"
/>
</el-select>
</el-form-item>
<el-form-item label="项目号" prop="spare4">
<el-input v-model="formData.spare4" placeholder="请输入项目号"/>
</el-form-item>
<el-form-item label="盘点类型" prop="checkType" required>
<el-select v-model="formData.checkType" placeholder="请选择盘点类型" clearable @change="handleCheckTypeChange">
<el-option
@@ -22,6 +25,10 @@
/>
</el-select>
</el-form-item>
<el-form-item label="备注" prop="spare5">
<el-input v-model="formData.spare5" placeholder="请输入备注"/>
</el-form-item>
<el-form-item>
<el-button type="warning" icon="el-icon-refresh" size="mini" @click="reset">重置</el-button>
<el-button type="success" icon="el-icon-check" size="mini" @click="handleSave"
@@ -32,19 +39,27 @@
<div class="mb8">
<el-button type="primary" icon="el-icon-plus" size="mini" v-hasPermi="['check:productAndStock:list']"
@click="handleSelectMaterials">选择物资
@click="handleSelectMaterials">选择存货
</el-button>
<el-button type="info" icon="el-icon-refresh-right" size="mini" @click="handleReload">重新建单</el-button>
</div>
<!-- 物资明细表格 -->
<!-- 存货明细表格 -->
<el-table v-loading="loading" :data="materialList">
<el-table-column label="物资编号" align="left" prop="productId"/>
<el-table-column label="品名" align="left" prop="productName"/>
<el-table-column label="存货编号" align="left" prop="productId"/>
<el-table-column label="存货名称" align="left" prop="spare7"/>
<el-table-column label="批号" align="left" prop="lotNo"/>
<el-table-column label="层级关系" align="right" prop="spare1"/>
<el-table-column label="上层物料" align="right" prop="spare2"/>
<el-table-column label="顶层物料" align="right" prop="spare3"/>
<el-table-column label="项目号" align="right" prop="spare4"/>
<el-table-column label="合同号" align="right" prop="spare5"/>
<el-table-column label="销售订单号" align="right" prop="spare6"/>
<el-table-column label="供应商编码" align="right" prop="supplierId"/>
<el-table-column label="规格型号" align="right" prop="spec"/>
<el-table-column label="计量单位" align="right" prop="unit"/>
<!-- <el-table-column label="货位名称" align="left" prop="cargoSpaceName"/>-->
<el-table-column label="数量" align="right" prop="quantity"/>
<el-table-column label="仓库编号" align="left" prop="warehouseId"/>
<el-table-column label="货位名称" align="left" prop="cargoSpaceName"/>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.$index)">删除</el-button>
@@ -52,29 +67,61 @@
</el-table-column>
</el-table>
<!-- 选择物料物资弹窗 -->
<el-dialog title="选择物资" :visible.sync="materialDialogByProduct" width="800px" append-to-body>
<!-- 选择物料存货弹窗 -->
<el-dialog title="选择存货" :visible.sync="materialDialogByProduct" width="70%" append-to-body>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
<el-form-item label="品号" prop="productId">
<el-form-item label="存货编码" prop="productId"><!--品号-->
<el-input
v-model="queryParams.productId"
placeholder="请输入品号"
:placeholder="'请输入存货编码'"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="品名" prop="productName">
<el-form-item label="存货名称" prop="productName"><!--品名-->
<el-input
v-model="queryParams.productName"
placeholder="请输入品名"
:placeholder="'请输入存货名称'"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="批号" prop="lotNo">
<el-form-item label="层级关系" prop="spare1"><!--品名-->
<el-input
v-model="queryParams.lotNo"
placeholder="请输入批号"
v-model="queryParams.spare1"
:placeholder="'请输入层级关系'"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="上层物料" prop="spare2"><!--品名-->
<el-input
v-model="queryParams.spare2"
:placeholder="'请输入上层物料'"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="顶层物料" prop="spare3"><!--品名-->
<el-input
v-model="queryParams.spare3"
:placeholder="'请输入顶层物料'"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="规格型号" prop="power"><!--品名-->
<el-input
v-model="queryParams.power"
:placeholder="'请输入规格型号'"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="计量单位" prop="phase"><!--品名-->
<el-input
v-model="queryParams.phase"
:placeholder="'请输入计量单位'"
clearable
@keyup.enter.native="handleQuery"
/>
@@ -99,52 +146,23 @@
</el-form-item>
</el-form>
<el-table v-loading="materialLoading" :data="materialOptions" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center"/>
<el-table-column label="盘点状态" align="center" prop="spare7">
<template slot-scope="scope">
<dict-tag :options="dict.type.check_status" :value="scope.row.spare7"/>
</template>
</el-table-column>
<el-table-column label="品号" align="center" prop="productId"/>
<el-table-column label="NC号" align="center" prop="spare9"/>
<el-table-column label="品名" align="center" prop="productName"/>
<el-table-column label="数量" align="center" prop="quantity"/>
<el-table-column label="规格" align="center" prop="spec"/>
<el-table-column label="品号描述" align="center" prop="price"/>
<el-table-column label="英文描述" align="center" prop="cargoNo"/>
<el-table-column label="图号" align="center" prop="unit"/>
<el-table-column label="电压" align="center" prop="spare5"/>
<el-table-column label="电源线" align="center" prop="spare10"/>
<el-table-column label="插头" align="center" prop="spare11"/>
<el-table-column label="接嘴" align="center" prop="spare12"/>
<el-table-column label="快捷码" align="center" prop="spare13"/>
<el-table-column label="库存单位编号" align="center" prop="spare14"/>
<el-table-column label="库存单位名称" align="center" prop="spare15"/>
<el-table-column label="品号群组" align="center" prop="spare16"/>
<el-table-column label="归类品" align="center" prop="spare17"/>
<el-table-column label="计量体系" align="center" prop="spare18"/>
<el-table-column label="群组名称" align="center" prop="spare19"/>
<el-table-column label="批号管理" align="center" prop="spare20"/>
<el-table-column label="状态" align="center" prop="spare21"/>
<el-table-column label="产品大类" align="center" prop="spare22"/>
<el-table-column label="产品二类" align="center" prop="spare23"/>
<el-table-column label="产品线/产品系列" align="center" prop="spare24"/>
<el-table-column label="BOM状态" align="center" prop="spare25"/>
<el-table-column label="产品定位" align="center" prop="spare26"/>
<el-table-column label="电脑板型号" align="center" prop="spare27"/>
<el-table-column label="非标要求" align="center" prop="spare28"/>
<el-table-column label="品牌" align="center" prop="spare29"/>
<el-table-column label="非标颜色" align="center" prop="spare30"/>
<el-table-column label="主颜色" align="center" prop="spare31"/>
<el-table-column label="辅助颜色" align="center" prop="spare32"/>
<el-table-column label="是否标准款" align="center" prop="spare33"/>
<el-table-column label="包装方式" align="center" prop="spare34"/>
<el-table-column label="主要包装方式" align="center" prop="spare35"/>
<el-table-column label="描述" align="center" prop="remark"/>
<el-table-column label="长" align="center" prop="spare36"/>
<el-table-column label="宽" align="center" prop="spare37"/>
<el-table-column label="高" align="center" prop="spare38"/>
<el-table-column label="包装材积" align="center" prop="spare39"/>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="序号" align="center" prop="onlyIdentity" />
<el-table-column label="存货编码" align="center" prop="productId" />
<el-table-column label="批号" align="center" prop="lotNo" />
<el-table-column label="存货名称" align="center" prop="productName" />
<el-table-column label="库存数量" align="center" prop="quantity" />
<el-table-column label="仓库编码" align="center" prop="warehouseId" />
<el-table-column label="供应商名称" align="center" prop="stackingId" />
<el-table-column label="层级关系" align="center" prop="spare1" />
<el-table-column label="上层物料" align="center" prop="spare2" />
<el-table-column label="顶层物料" align="center" prop="spare3" />
<el-table-column label="项目号" align="center" prop="spare4" />
<el-table-column label="合同号" align="center" prop="spare5" />
<el-table-column label="销售订单号" align="center" prop="spare6" />
<el-table-column label="供应商编码" align="center" prop="voltage" />
<el-table-column label="规格型号" align="center" prop="power" />
<el-table-column label="计量单位" align="center" prop="phase" />
</el-table>
<pagination
@@ -342,30 +360,36 @@ export default {
],
checkType: [
{required: true, message: '请选择单据类型', trigger: "change"}
],
spare4: [
{required: true, message: '请输入项目号', trigger: "change"}
]
},
// 主表数据
formData: {
warehouseId: "01",
warehouseId: null,
customerNo: null,
checkType: null
checkType: null,
spare5: null,
spare4: null,
erpBill: null,
},
// 仓库选项
warehouseOptions: [],
// 物资明细列表
// 存货明细列表
materialList: [],
// 选择物资弹窗
// 选择存货弹窗
materialDialogByProduct: false,
materialDialogByTrayCode: false,
// 物资选择列表
// 存货选择列表
materialOptions: [],
// 托盘选择列表
trayOptions: [],
// 已选择的物资
// 已选择的存货
selectedMaterials: [],
// 已选择的托盘
selectedTrays: [],
// 物资查询参数
// 存货查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
@@ -412,7 +436,7 @@ export default {
this.warehouseOptions = response.rows;
});
},
/** 打开选择物资弹窗 */
/** 打开选择存货弹窗 */
handleSelectMaterials() {
// if (!this.formData.warehouseId) {
// this.$modal.msgError('请选择仓库');
@@ -423,18 +447,23 @@ export default {
return;
}
if (this.formData.checkType === '1') {
if (!this.formData.spare4){
this.$modal.msgError('请输入项目号');
return;
}
this.materialDialogByProduct = true;
// 设置查询参数中的仓库ID为主表选择的仓库
this.queryParams.warehouseId = "01";
this.queryParams.warehouseId = this.formData.warehouseId;
this.queryParams.spare4 = this.formData.spare4;
this.getMaterialList();
} else if (this.formData.checkType === '2') {
this.materialDialogByTrayCode = true;
// 设置查询参数中的仓库ID为主表选择的仓库
this.queryParams.warehouseId = "01";
this.queryParams.warehouseId = this.formData.warehouseId;
this.getMaterialByTrayCodeList();
}
},
/** 获取物资列表 */
/** 获取存货列表 */
getMaterialList() {
this.materialLoading = true;
if (this.formData.checkType === '1') {
@@ -445,7 +474,7 @@ export default {
});
}
},
/* 获取托盘物资列表*/
/* 获取托盘存货列表*/
getMaterialByTrayCodeList() {
this.trayLoading = true;
if (this.formData.checkType === '2') {
@@ -460,7 +489,7 @@ export default {
});
}
},
/** 物资选择变更 */
/** 存货选择变更 */
handleSelectionChange(selection) {
this.selectedMaterials = selection;
},
@@ -483,7 +512,7 @@ export default {
});
}
},
/** 确认选择物资 */
/** 确认选择存货 */
confirmSelectMaterials() {
if (this.formData.checkType === '1') {
this.confirmSelectMaterialsByProduct();
@@ -491,19 +520,19 @@ export default {
this.confirmSelectMaterialsByTray();
}
},
/** 确认选择物料物资 */
/** 确认选择物料存货 */
confirmSelectMaterialsByProduct() {
if (this.selectedMaterials.length === 0) {
this.$modal.msgError('请选择物资');
this.$modal.msgError('请选择存货');
return;
}
// 过滤掉已经存在的物资
// 过滤掉已经存在的存货
const newMaterials = this.selectedMaterials.filter(item => {
return !this.materialList.some(existing => existing.onlyIdentity === item.onlyIdentity);
});
if (newMaterials.length === 0) {
this.$modal.msgWarning('选择的物资已存在');
this.$modal.msgWarning('选择的存货已存在');
return;
}
@@ -511,32 +540,29 @@ export default {
newMaterials.map(item => ({
productId: item.productId,
productGuId: item.productGuid,
productName: item.productName,
spare7: item.productName,
quantity: item.quantity,
lotNo: item.lotNo,
onlyIdentity: item.onlyIdentity,
warehouseId: item.warehouseId,
cargoSpaceId: item.cargoSpaceId,
cargoSpaceName: item.cargoSpaceName,
spec: item.spare1,
// spare3: item.spare3,
spare1: item.spare4,
spare3: item.spare5,
spare4: item.spare6,
spare5: item.voltage,
spare6: item.power,
spare7: item.phase,
spare2: item.netWeight,
spare8: item.grossWeight,
spare9: item.distribution,
unit: item.model,
orderId: item.orderId
spare1: item.spare1,
spare2: item.spare2,
spare3: item.spare3,
spare4: item.spare4,
spare5: item.spare5,
spare6: item.spare6,
spec: item.power,
unit: item.phase,
supplierId: item.stackingId,
}))
);
this.materialDialogByProduct = false;
this.selectedMaterials = [];
},
/** 确认选择托盘物资 */
/** 确认选择托盘存货 */
confirmSelectMaterialsByTray() {
if (this.selectedTrays.length === 0) {
this.$modal.msgError('请选择托盘');
@@ -580,7 +606,7 @@ export default {
this.materialDialogByTrayCode = false;
this.selectedTrays = [];
},
/** 取消选择物资 */
/** 取消选择存货 */
cancelSelectMaterials() {
if (this.formData.checkType === '1') {
this.cancelSelectMaterialsByProduct();
@@ -588,22 +614,22 @@ export default {
this.cancelSelectMaterialsByTray();
}
},
/** 取消选择物料物资 */
/** 取消选择物料存货 */
cancelSelectMaterialsByProduct() {
this.selectedMaterials = [];
this.materialDialogByProduct = false;
},
/** 取消选择托盘物资 */
/** 取消选择托盘存货 */
cancelSelectMaterialsByTray() {
this.selectedTrays = [];
this.materialDialogByTrayCode = false;
},
/** 物资搜索按钮操作 */
/** 存货搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getMaterialList();
},
/** 物资重置按钮操作 */
/** 存货重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
@@ -625,7 +651,7 @@ export default {
this.handleQuery();
})
},
/** 删除物资 */
/** 删除存货 */
handleDelete(index) {
this.materialList.splice(index, 1);
},
@@ -634,7 +660,7 @@ export default {
this.$refs.formRef.validate(valid => {
if (valid) {
if (this.materialList.length === 0) {
this.$modal.msgError('请选择物资');
this.$modal.msgError('请选择存货');
return;
}
const data = {
@@ -655,7 +681,7 @@ export default {
/** 单据类型变更处理 */
handleCheckTypeChange(value) {
if (this.materialList.length > 0) {
this.$modal.msgWarning('已添加物资,不能更改单据类型');
this.$modal.msgWarning('已添加存货,不能更改单据类型');
this.$nextTick(() => {
this.formData.checkType = this.oldCheckType;
});

View File

@@ -33,10 +33,10 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="品号" prop="productId">
<el-form-item label="存货编码" prop="productId">
<el-input
v-model="queryParams.productId"
placeholder="请输入品号"
placeholder="请输入存货编码"
clearable
@keyup.enter.native="handleQuery"
/>
@@ -115,9 +115,8 @@
<el-table-column label="库存编号" align="left" prop="stockId" />
<el-table-column label="托盘编码" align="left" prop="trayCode" />
<el-table-column label="货位名称" align="left" prop="cargoSpaceName" />
<el-table-column label="品号" align="left" prop="productId" />
<el-table-column label="品名" align="left" prop="extraField.materialDesc"/>
<el-table-column label="英文描述" align="left" prop="extraField.englishDesc"/>
<el-table-column label="存货编码" align="left" prop="productId" />
<el-table-column label="存货名称" align="left" prop="extraField.materialDesc"/>
<el-table-column label="原值" align="right" prop="oldQuantity" />
<el-table-column label="新值" align="right" prop="newQuantity" />
<el-table-column label="操作方式" align="left" prop="recordType" >
@@ -165,8 +164,8 @@
<el-form-item label="供应商" prop="supplier">
<el-input v-model="form.supplier" placeholder="请输入供应商" />
</el-form-item>
<el-form-item label="客户" prop="customer">
<el-input v-model="form.customer" placeholder="请输入客户" />
<el-form-item label="客商" prop="customer">
<el-input v-model="form.customer" placeholder="请输入客商" />
</el-form-item>
<el-form-item label="原值" prop="oldQuantity">
<el-input v-model="form.oldQuantity" placeholder="请输入原值" />

View File

@@ -1,15 +1,21 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<!-- <el-form-item label="任务ID" prop="jobId">
<el-input
v-model="queryParams.jobId"
placeholder="请输入任务ID"
<el-form-item label="仓库" prop="warehouseId"> <!-- 仓库 -->
<el-select
v-model="queryParams.warehouseId"
placeholder="请选择仓库"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>-->
<el-form-item label="任务状态" prop="status">
>
<el-option
v-for="dict in warehouseOptions"
:key="dict.warehouseId"
:label="dict.warehouseName"
:value="dict.warehouseId"
/>
</el-select>
</el-form-item>
<el-form-item label="任务状态" prop="status"> <!-- 状态 -->
<el-select v-model="queryParams.status" placeholder="请选择任务状态" clearable>
<el-option
v-for="dict in dict.type.mydo_job_status"
@@ -19,7 +25,18 @@
/>
</el-select>
</el-form-item>
<el-form-item label="任务号" prop="taskNo">
<el-form-item label="作业类型" prop="inOrOut"> <!-- 作业类型 -->
<el-select v-model="queryParams.inOrOut" placeholder="请选择作业类型" clearable>
<el-option
v-for="dict in dict.type.out_job_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="任务号" prop="taskNo"> <!-- 任务号 -->
<el-input
v-model="queryParams.taskNo"
placeholder="请输入任务号"
@@ -27,36 +44,37 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="序列号" prop="trayCode">
<el-form-item label="托盘码" prop="trayCode"> <!-- 托盘条码 -->
<el-input
v-model="queryParams.trayCode"
placeholder="请输入序列号"
placeholder="请输入托盘码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="订单号" prop="lineId">
<el-form-item label="存货编码" prop="productId">
<el-input
v-model="queryParams.lineId"
placeholder="请输入订单号"
v-model="queryParams.productId"
placeholder="请输入存货编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="开始时间" prop="startTime">
<el-form-item label="开始时间" prop="startTime"> <!-- 开始时间 -->
<el-date-picker clearable
v-model="queryParams.startTime"
type="datetime" style="width: 206px"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择开始时间">
placeholder="请选择开始时间" style="width: 206px">
</el-date-picker>
</el-form-item>
<el-form-item label="结束时间" prop="finishTime">
<el-form-item label="结束时间" prop="finishTime"> <!-- 结束时间 -->
<el-date-picker clearable
v-model="queryParams.finishTime"
type="datetime" style="width: 206px"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择结束时间">
placeholder="请选择结束时间" style="width: 206px">
</el-date-picker>
</el-form-item>
<el-form-item>
@@ -94,40 +112,25 @@
<el-table v-loading="loading" :data="mydoJobList" @selection-change="handleSelectionChange" @row-click="handleRowClick" highlight-current-row :current-row="currentRow"
max-height="400">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="任务ID" align="left" prop="jobId" width="160"/>
<el-table-column label="任务状态" align="left" prop="status">
<el-table-column label="任务ID" align="left" prop="jobId" width="160"/> <!-- 任务ID -->
<el-table-column label="任务状态" align="left" prop="status"> <!-- 任务状态 -->
<template slot-scope="scope">
<dict-tag :options="dict.type.mydo_job_status" :value="scope.row.status"/>
</template>
</el-table-column>
<!-- <el-table-column label="上线类型" align="left" prop="onLineType">
<el-table-column label="任务类型" align="left" prop="inOrOut"> <!-- 任务类型 -->
<template slot-scope="scope">
<dict-tag :options="dict.type.on_line_type" :value="scope.row.onLineType"/>
</template>
</el-table-column>-->
<el-table-column label="任务号" align="left" prop="taskNo" />
<el-table-column label="任务类型" align="left" prop="inOrOut">
<template slot-scope="scope">
<dict-tag :options="dict.type.check_in_job_type" :value="scope.row.inOrOut"/>
<dict-tag :options="dict.type.out_job_type" :value="scope.row.inOrOut"/>
</template>
</el-table-column>
<!-- <el-table-column label="供应商" align="left" prop="supplierName" key="supplierId" value="supplierName" />-->
<!-- <el-table-column label="部门" align="left" prop="departmentName" />-->
<el-table-column label="序列号" align="left" prop="trayCode" />
<el-table-column label="货位" align="left" prop="cargoSpaceName" width="160"/>
<el-table-column label="订单号" align="left" prop="lineId" />
<el-table-column label="入口" align="left" prop="entranceId" />
<!-- <el-table-column label="优先级" align="right" prop="priority" />-->
<!-- <el-table-column label="执行阶段" align="left" prop="executionPhase">
<template slot-scope="scope">
<dict-tag :options="dict.type.execution_phase_type" :value="scope.row.executionPhase"/>
</template>
</el-table-column>-->
<el-table-column label="创建时间" align="left" prop="createTime" width="160"/>
<el-table-column label="开始时间" align="left" prop="startTime" width="160"/>
<el-table-column label="结束时间" align="left" prop="finishTime" width="160"/>
<!-- <el-table-column label="仓库" align="left" prop="warehouseName" />-->
<el-table-column label="任务号" align="left" prop="taskNo" /> <!-- 任务号 -->
<el-table-column label="托盘码" align="left" prop="trayCode" width="130" />
<el-table-column label="货位名称" align="left" prop="cargoSpaceName" width="130"/> <!-- 货位ID -->
<el-table-column label="项目号" align="left" prop="lineId" width="130"/> <!-- 结束时间 -->
<el-table-column label="出口" align="left" prop="exitId"/> <!-- 出口ID -->
<el-table-column label="创建时间" align="left" prop="createTime" width="180" sortable/> <!-- 创建时间 -->
<el-table-column label="开始时间" align="left" prop="startTime" width="180" sortable/> <!-- 开始时间 -->
<el-table-column label="结束时间" align="left" prop="finishTime" width="180" sortable/> <!-- 结束时间 -->
</el-table>
<pagination
@@ -141,25 +144,20 @@
<el-table v-loading="detailLoading" :data="mydoJobDetailList" @selection-change="handleSelectionChange"
max-height="300"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="子任务ID" align="left" prop="jobDetailId" width="160" />
<el-table-column label="任务ID" align="left" prop="jobId" width="160"/>
<el-table-column label="单据ID" align="left" prop="inOrOutId" width="160"/>
<el-table-column label="子单据ID" align="left" prop="inOrOutDId" width="160"/>
<el-table-column label="品号" align="left" prop="productId" />
<el-table-column label="品名" align="left" prop="productName" width="160"/>
<el-table-column label="入库数量" align="right" prop="inQuantity" />
<el-table-column label="机型" align="left" prop="unit"/><!--机型-->
<el-table-column label="分销" align="left" prop="spare9"/><!--分销-->
<el-table-column label="规格" align="left" prop="spec"/><!--规格-->
<el-table-column label="型号" align="left" prop="spare1"/><!--型号-->
<el-table-column label="净重" align="left" prop="spare2"/><!--净重-->
<el-table-column label="颜色" align="left" prop="spare3"/><!--颜色-->
<el-table-column label="序列号" align="left" prop="spare4"/><!--序列号-->
<el-table-column label="电压" align="left" prop="spare5"/><!--电压-->
<el-table-column label="功率" align="left" prop="spare6"/><!--功率-->
<el-table-column label="相位" align="left" prop="spare7"/><!--相位-->
<el-table-column label="毛重" align="left" prop="spare8"/><!--毛重-->
<el-table-column label="库存ID" align="left" prop="stockId" width="160" />
<el-table-column label="子单据ID" align="left" prop="inOrOutDId" width="160" />
<el-table-column label="存货编码" align="left" prop="productId" />
<el-table-column label="存货名称" align="left" prop="productName" />
<el-table-column label="批次号" align="left" prop="lotNo" />
<el-table-column label="客商名称" align="left" prop="stackingId"/>
<el-table-column label="层级关系" align="left" prop="spare1"/>
<el-table-column label="上层物料" align="left" prop="spare2"/>
<el-table-column label="顶层物料" align="left" prop="spare3"/>
<el-table-column label="项目号" align="left" prop="spare4"/>
<el-table-column label="合同号" align="left" prop="spare5"/>
<el-table-column label="销售订单" align="left" prop="spare6"/>
<el-table-column label="出库数量" align="right" prop="outQuantity" />
</el-table>
<pagination

View File

@@ -1,15 +1,21 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<!-- <el-form-item label="任务ID" prop="jobId">
<el-input
v-model="queryParams.jobId"
placeholder="请输入任务ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>-->
<el-form-item label="任务状态" prop="status">
<el-form-item label="仓库" prop="warehouseId"> <!-- 仓库 -->
<el-select
v-model="queryParams.warehouseId"
placeholder="请选择仓库"
clearable
>
<el-option
v-for="dict in warehouseOptions"
:key="dict.warehouseId"
:label="dict.warehouseName"
:value="dict.warehouseId"
/>
</el-select>
</el-form-item>
<el-form-item label="任务状态" prop="status"> <!-- 状态 -->
<el-select v-model="queryParams.status" placeholder="请选择任务状态" clearable>
<el-option
v-for="dict in dict.type.mydo_job_status"
@@ -19,7 +25,18 @@
/>
</el-select>
</el-form-item>
<el-form-item label="任务号" prop="taskNo">
<el-form-item label="作业类型" prop="inOrOut"> <!-- 作业类型 -->
<el-select v-model="queryParams.inOrOut" placeholder="请选择作业类型" clearable>
<el-option
v-for="dict in dict.type.out_job_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="任务号" prop="taskNo"> <!-- 任务号 -->
<el-input
v-model="queryParams.taskNo"
placeholder="请输入任务号"
@@ -27,36 +44,37 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="序列号" prop="trayCode">
<el-form-item label="托盘码" prop="trayCode"> <!-- 托盘条码 -->
<el-input
v-model="queryParams.trayCode"
placeholder="请输入序列号"
placeholder="请输入托盘码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="订单号" prop="lineId">
<el-form-item label="存货编码" prop="productId">
<el-input
v-model="queryParams.lineId"
placeholder="请输入订单号"
v-model="queryParams.productId"
placeholder="请输入存货编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="开始时间" prop="startTime">
<el-form-item label="开始时间" prop="startTime"> <!-- 开始时间 -->
<el-date-picker clearable
v-model="queryParams.startTime"
type="datetime" style="width: 206px"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择开始时间">
placeholder="请选择开始时间" style="width: 206px">
</el-date-picker>
</el-form-item>
<el-form-item label="结束时间" prop="finishTime">
<el-form-item label="结束时间" prop="finishTime"> <!-- 结束时间 -->
<el-date-picker clearable
v-model="queryParams.finishTime"
type="datetime" style="width: 206px"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择结束时间">
placeholder="请选择结束时间" style="width: 206px">
</el-date-picker>
</el-form-item>
<el-form-item>
@@ -92,36 +110,25 @@
<el-table v-loading="loading" :data="mydoJobList" @selection-change="handleSelectionChange"
@row-click="handleRowClick" max-height="400">
<el-table-column type="selection" width="55" align="center"/>
<el-table-column label="任务ID" align="left" prop="jobId"/>
<el-table-column label="任务状态" align="left" prop="status">
<el-table-column label="任务ID" align="left" prop="jobId" width="160"/> <!-- 任务ID -->
<el-table-column label="任务状态" align="left" prop="status"> <!-- 任务状态 -->
<template slot-scope="scope">
<dict-tag :options="dict.type.mydo_job_status" :value="scope.row.status"/>
</template>
</el-table-column>
<el-table-column label="任务号" align="left" prop="taskNo"/>
<el-table-column label="任务类型" align="left" prop="inOrOut">
<el-table-column label="任务类型" align="left" prop="inOrOut"> <!-- 任务类型 -->
<template slot-scope="scope">
<dict-tag :options="dict.type.check_out_job_type" :value="scope.row.inOrOut"/>
<dict-tag :options="dict.type.out_job_type" :value="scope.row.inOrOut"/>
</template>
</el-table-column>
<!-- <el-table-column label="部门" align="left" prop="departmentName" />-->
<el-table-column label="序列号" align="left" prop="trayCode"/>
<el-table-column label="货位" align="left" prop="cargoSpaceName"/>
<el-table-column label="订单号" align="right" prop="lineId"/>
<!-- <el-table-column label="执行阶段" align="left" prop="executionPhase">
<template slot-scope="scope">
<dict-tag :options="dict.type.execution_phase_type" :value="scope.row.executionPhase"/>
</template>
</el-table-column>-->
<el-table-column label="出口" align="left" prop="exitId"/>
<el-table-column label="创建时间" align="left" prop="createTime" width="180">
</el-table-column>
<el-table-column label="开始时间" align="left" prop="startTime" width="180"/>
<el-table-column label="结束时间" align="left" prop="finishTime" width="180"/>
<!-- <el-table-column label="仓库" align="left" prop="warehouseName" />-->
<el-table-column label="任务号" align="left" prop="taskNo" /> <!-- 任务号 -->
<el-table-column label="托盘码" align="left" prop="trayCode" width="130" />
<el-table-column label="货位名称" align="left" prop="cargoSpaceName" width="130"/> <!-- 货位ID -->
<el-table-column label="项目号" align="left" prop="lineId" width="130"/> <!-- 结束时间 -->
<el-table-column label="出口" align="left" prop="exitId"/> <!-- 出口ID -->
<el-table-column label="创建时间" align="left" prop="createTime" width="180" sortable/> <!-- 创建时间 -->
<el-table-column label="开始时间" align="left" prop="startTime" width="180" sortable/> <!-- 开始时间 -->
<el-table-column label="结束时间" align="left" prop="finishTime" width="180" sortable/> <!-- 结束时间 -->
</el-table>
@@ -134,25 +141,20 @@
/>
<el-table v-loading="loading" :data="mydoJobDetailList" @selection-change="handleSelectionChange">
<el-table-column label="子任务ID" align="left" prop="jobDetailId" width="160"/>
<el-table-column label="任务ID" align="left" prop="jobId" width="160"/>
<el-table-column label="单据ID" align="left" prop="inOrOutId" width="160"/>
<el-table-column label="子单据ID" align="left" prop="inOrOutDId" width="160"/>
<el-table-column label="库存ID" align="left" prop="stockId" width="160"/>
<el-table-column label="品号" align="left" prop="productId"/>
<el-table-column label="品名" align="left" prop="productName" width="160"/>
<el-table-column label="出库数量" align="right" prop="outQuantity"/> <!-- 出库数量 -->
<el-table-column label="机型" align="left" prop="unit"/><!--机型-->
<el-table-column label="分销" align="left" prop="spare9"/><!--分销-->
<el-table-column label="规格" align="left" prop="spec"/><!--规格-->
<el-table-column label="型号" align="left" prop="spare1"/><!--型号-->
<el-table-column label="净重" align="left" prop="spare2"/><!--净重-->
<el-table-column label="颜色" align="left" prop="spare3"/><!--颜色-->
<el-table-column label="序列号" align="left" prop="spare4"/><!--序列号-->
<el-table-column label="电压" align="left" prop="spare5"/><!--电压-->
<el-table-column label="功率" align="left" prop="spare6"/><!--功率-->
<el-table-column label="相位" align="left" prop="spare7"/><!--相位-->
<el-table-column label="毛重" align="left" prop="spare8"/><!--毛重-->
<el-table-column label="子任务ID" align="left" prop="jobDetailId" width="160" />
<el-table-column label="库存ID" align="left" prop="stockId" width="160" />
<el-table-column label="子单据ID" align="left" prop="inOrOutDId" width="160" />
<el-table-column label="存货编码" align="left" prop="productId" />
<el-table-column label="存货名称" align="left" prop="productName" />
<el-table-column label="批次号" align="left" prop="lotNo" />
<el-table-column label="客商名称" align="left" prop="stackingId"/>
<el-table-column label="层级关系" align="left" prop="spare1"/>
<el-table-column label="上层物料" align="left" prop="spare2"/>
<el-table-column label="顶层物料" align="left" prop="spare3"/>
<el-table-column label="项目号" align="left" prop="spare4"/>
<el-table-column label="合同号" align="left" prop="spare5"/>
<el-table-column label="销售订单" align="left" prop="spare6"/>
<el-table-column label="出库数量" align="right" prop="outQuantity" />
</el-table>
<pagination

View File

@@ -55,7 +55,7 @@
:disabled="single"
@click="handleReview"
v-hasPermi="['check:stockCheck:edit']"
>审核</el-button>
>审核单据</el-button>
</el-col>
<el-col :span="1.5">
<el-button
@@ -77,7 +77,7 @@
:disabled="single"
@click="handleConfirmation"
v-hasPermi="['check:stockCheck:edit']"
>确认</el-button>
>确认单据</el-button>
</el-col>
<el-col :span="1.5">
<el-button
@@ -88,7 +88,7 @@
:disabled="multiple"
@click="handleInvalidated"
v-hasPermi="['check:stockCheck:edit']"
>作废</el-button>
>作废单据</el-button>
</el-col>
@@ -109,12 +109,14 @@
<dict-tag :options="dict.type.check_bill_status" :value="scope.row.status"/>
</template>
</el-table-column>
<!-- <el-table-column label="仓库" align="left" prop="warehouseName" />-->
<el-table-column label="部门" align="left" prop="departmentName" />
<el-table-column label="项目号" align="left" prop="spare4" />
<el-table-column label="仓库" align="left" prop="warehouseName" />
<!-- <el-table-column label="部门" align="left" prop="departmentName" />-->
<el-table-column label="创建人" align="left" prop="createManId" />
<!-- <el-table-column label="盘点位置" align="left" prop="spare1" />-->
<el-table-column label="创建时间" align="left" prop="createDate" />
<el-table-column label="完成时间" align="left" prop="finishDate" />
<el-table-column label="备注" align="left" prop="spare5" />
</el-table>
<pagination
@@ -128,21 +130,18 @@
<el-table v-loading="detailLoading" :data="stockCheckDetailList" @selection-change="handleDetailSelectionChange">
<el-table-column label="子单ID" align="left" prop="stockCheckDetailId" width="160" />
<el-table-column label="主单ID" align="left" prop="stockCheckId" width="160" />
<el-table-column label="货位名称" align="left" prop="cargoSpaceName" width="160"/>
<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="lotNo"/><!--批号-->
<el-table-column label="机型" align="left" prop="unit"/><!--机型-->
<el-table-column label="分销" align="left" prop="spare9"/><!--分销-->
<el-table-column label="规格" align="left" prop="spec"/><!--规格-->
<el-table-column label="型号" align="left" prop="spare1"/><!--型号-->
<el-table-column label="净重" align="left" prop="spare2"/><!--净重-->
<el-table-column label="颜色" align="left" prop="spare3"/><!--颜色-->
<el-table-column label="序列号" align="left" prop="spare4"/><!--序列号-->
<el-table-column label="电压" align="left" prop="spare5"/><!--电压-->
<el-table-column label="功率" align="left" prop="spare6"/><!--功率-->
<el-table-column label="相位" align="left" prop="spare7"/><!--相位-->
<el-table-column label="毛重" align="left" prop="spare8"/><!--毛重-->
<!-- <el-table-column label="货位名称" align="left" prop="cargoSpaceName" width="160"/>-->
<el-table-column label="存货编码" align="left" prop="productId" width="160"/>
<el-table-column label="存货名称" align="left" prop="spare7" width="160"/>
<el-table-column label="批号" align="left" prop="lotNo"/>
<el-table-column label="计量单位" align="left" prop="unit"/>
<el-table-column label="规格型号" align="left" prop="spec"/>
<el-table-column label="层级关系" align="left" prop="spare1"/>
<el-table-column label="上层物料" align="left" prop="spare2"/>
<el-table-column label="顶层物料" align="left" prop="spare3"/>
<el-table-column label="项目号" align="left" prop="spare4"/>
<el-table-column label="合同号" align="left" prop="spare5"/>
<el-table-column label="销售订单" align="left" prop="spare6"/>
<el-table-column label="计划数量" align="right" prop="quantity"/>
<el-table-column label="扫码数量" align="right" prop="scanNum"/>
<el-table-column label="实际数量" align="right" prop="assignNum"/>

View File

@@ -2,7 +2,7 @@
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="任务状态" prop="status">
<el-form-item label="作业状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择任务状态" clearable>
<el-option
v-for="dict in dict.type.mydo_job_status"
@@ -12,7 +12,7 @@
/>
</el-select>
</el-form-item>
<el-form-item label="任务类型" prop="inOrOut">
<el-form-item label="作业类型" prop="inOrOut">
<el-select v-model="queryParams.inOrOut" placeholder="请选择任务类型" clearable>
<el-option
v-for="dict in dict.type.in_job_type"
@@ -30,34 +30,34 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="巷道" prop="roadwayId">
<el-input
v-model="queryParams.roadwayId"
placeholder="请输入巷道"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="序列号" prop="trayCode"> <!-- 托盘条码 -->
<!-- <el-form-item label="巷道" prop="roadwayId">-->
<!-- <el-input-->
<!-- v-model="queryParams.roadwayId"-->
<!-- placeholder="请输入巷道"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<el-form-item label="托盘条码" prop="trayCode"> <!-- 托盘条码 -->
<el-input
v-model="queryParams.trayCode"
placeholder="请输入序列号"
placeholder="请输入托盘条码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="品号" prop="productId">
<el-form-item label="存货编码" prop="productId">
<el-input
v-model="queryParams.productId"
placeholder="请输入品号"
placeholder="请输入存货编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="订单号" prop="lineId">
<el-form-item label="项目号" prop="lineId">
<el-input
v-model="queryParams.lineId"
placeholder="请输入订单号"
placeholder="请输入项目号"
clearable
@keyup.enter.native="handleQuery"
/>
@@ -135,8 +135,8 @@
<el-table v-loading="loading" :data="mydoJobList" @selection-change="handleSelectionChange" @row-click="handleRowClick" highlight-current-row :current-row="currentRow"
max-height="400">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="任务ID" align="left" prop="jobId" fixed width="140" />
<el-table-column label="任务状态" align="left" prop="status">
<el-table-column label="作业编码" align="left" prop="jobId" fixed width="140" />
<el-table-column label="状态" align="left" prop="status">
<template slot-scope="scope">
<dict-tag :options="dict.type.mydo_job_status" :value="scope.row.status"/>
</template>
@@ -146,26 +146,27 @@
<!-- <dict-tag :options="dict.type.on_line_type" :value="scope.row.onLineType"/>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="任务类型" align="left" prop="inOrOut">
<el-table-column label="作业类型" align="left" prop="inOrOut">
<template slot-scope="scope">
<dict-tag :options="dict.type.in_job_type" :value="scope.row.inOrOut"/>
</template>
</el-table-column>
<el-table-column label="任务号" align="left" prop="taskNo" />
<el-table-column label="巷道" align="left" prop="roadwayId" sortable/>
<el-table-column label="货位" align="left" prop="cargoSpaceName" width="140" sortable/>
<!-- <el-table-column label="巷道" align="left" prop="roadwayId" sortable/>-->
<el-table-column label="货位" align="left" prop="cargoSpaceName" width="140" />
<el-table-column label="托盘条码" align="left" prop="trayCode" width="140" />
<!-- <el-table-column label="优先级" align="left" prop="priority" />-->
<!-- <el-table-column label="执行阶段" align="left" prop="executionPhase">-->
<!-- <template slot-scope="scope">-->
<!-- <dict-tag :options="dict.type.execution_phase_type" :value="scope.row.executionPhase"/>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="订单号" align="left" prop="lineId" />
<el-table-column label="入口" align="left" prop="entranceId" sortable/>
<el-table-column label="项目号" align="left" prop="lineId" />
<el-table-column label="入口" align="left" prop="entranceId" />
<!-- <el-table-column label="仓库" align="left" prop="warehouseName" />-->
<el-table-column label="创建时间" align="left" prop="createTime" width="180" sortable/>
<el-table-column label="开始时间" align="left" prop="startTime" width="180" sortable/>
<el-table-column label="结束时间" align="left" prop="finishTime" width="180" sortable/>
<el-table-column label="创建时间" align="left" prop="createTime" width="180" />
<el-table-column label="开始时间" align="left" prop="startTime" width="180" />
<el-table-column label="结束时间" align="left" prop="finishTime" width="180" />
</el-table>
<pagination
@@ -180,25 +181,22 @@
max-height="300"
>
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="子任务ID" align="left" prop="jobDetailId" width="150" />
<el-table-column label="任务ID" align="left" prop="jobId" width="140" />
<el-table-column label="单据ID" align="left" prop="inOrOutId" width="150" />
<el-table-column label="子单据ID" align="left" prop="inOrOutDId" width="160" />
<el-table-column label="品号" align="left" prop="productId" width="140" />
<el-table-column label="品名" align="left" prop="productName" />
<el-table-column label="子作业编码" align="left" prop="jobDetailId" width="150" />
<el-table-column label="作业编码" align="left" prop="jobId" width="140" />
<el-table-column label="单据编码" align="left" prop="inOrOutId" width="150" />
<el-table-column label="子单据编码" align="left" prop="inOrOutDId" width="160" />
<el-table-column label="存货编码" align="left" prop="productId" width="140" />
<el-table-column label="存货名称" align="left" prop="productName" />
<el-table-column label="批号" align="left" prop="lotNo" />
<el-table-column label="入库数量" align="right" prop="inQuantity" />
<el-table-column label="机型" align="left" prop="unit"/><!--机型-->
<el-table-column label="分销" align="left" prop="spare9"/><!--分销-->
<el-table-column label="规格" align="left" prop="spec"/><!--规格-->
<el-table-column label="型号" align="left" prop="spare1"/><!--型号-->
<el-table-column label="净重" align="left" prop="spare2"/><!--净重-->
<el-table-column label="颜色" align="left" prop="spare3"/><!--颜色-->
<el-table-column label="序列号" align="left" prop="spare4" width="130"/><!--序列号-->
<el-table-column label="电压" align="left" prop="spare5"/><!--电压-->
<el-table-column label="功率" align="left" prop="spare6"/><!--功率-->
<el-table-column label="相位" align="left" prop="spare7"/><!--相位-->
<el-table-column label="毛重" align="left" prop="spare8"/><!--毛重-->
<el-table-column label="计量单位" align="left" prop="unit"/><!--机型-->
<el-table-column label="规格型号" align="left" prop="spec"/><!--机型-->
<el-table-column label="层级关系" align="left" prop="spare1"/><!--型号-->
<el-table-column label="上层物料" align="left" prop="spare2"/><!--净重-->
<el-table-column label="顶层物料" align="left" prop="spare3"/><!--颜色-->
<el-table-column label="合同号" align="left" prop="spare5"/><!--电压-->
<el-table-column label="销售订单号" align="left" prop="spare6"/><!--功率-->
</el-table>
<pagination

View File

@@ -127,7 +127,7 @@
<!-- <el-table-column label="erp单号" align="center" prop="erpBill"/>-->
<el-table-column label="单据来源" align="left" prop="stockSource"/><!--单据来源-->
<el-table-column label="部门" align="left" prop="departmentName"/><!--部门-->
<!-- <el-table-column label="客户编码" align="center" prop="customerNo"/>-->
<!-- <el-table-column label="客商代号" align="center" prop="customerNo"/>-->
<!-- <el-table-column label="班组编码" align="center" prop="classNo"/>-->
<el-table-column label="供应商" align="left" prop="supplierName"/><!--供应商-->
<!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
@@ -224,7 +224,7 @@
</template>
</el-table-column>
<!-- <el-table-column label="供应商编码" align="center" prop="supplierId"/>-->
<!-- <el-table-column label="客户编码" align="center" prop="customerId"/>-->
<!-- <el-table-column label="客商代号" align="center" prop="customerId"/>-->
<!-- <el-table-column label="单位" align="center" prop="unit"/>-->
<!-- <el-table-column label="规格" align="center" prop="spec"/>-->
<!-- <el-table-column label="备用字段1" align="center" prop="spare1" />

View File

@@ -1,6 +1,20 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="仓库" prop="warehouseId"> <!-- 仓库 -->
<el-select
v-model="queryParams.warehouseId"
placeholder="请选择仓库"
clearable
>
<el-option
v-for="dict in warehouseOptions"
:key="dict.warehouseId"
:label="dict.warehouseName"
:value="dict.warehouseId"
/>
</el-select>
</el-form-item>
<el-form-item label="任务状态" prop="status"> <!-- 状态 -->
<el-select v-model="queryParams.status" placeholder="请选择任务状态" clearable>
<el-option
@@ -30,42 +44,18 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="巷道" prop="roadwayId"> <!-- 托盘条码 -->
<el-input
v-model="queryParams.roadwayId"
placeholder="请输入巷道"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="序列号" prop="trayCode"> <!-- 托盘条码 -->
<el-form-item label="托盘码" prop="trayCode"> <!-- 托盘条码 -->
<el-input
v-model="queryParams.trayCode"
placeholder="请输入序列号"
placeholder="请输入托盘码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="品号" prop="productId"> <!-- 托盘条码 -->
<el-form-item label="存货编码" prop="productId">
<el-input
v-model="queryParams.productId"
placeholder="请输入品号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="订单号" prop="lineId"> <!-- 托盘条码 -->
<el-input
v-model="queryParams.lineId"
placeholder="请输入订单号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="出口" prop="exitId"> <!-- 托盘条码 -->
<el-input
v-model="queryParams.exitId"
placeholder="请输入出口"
placeholder="请输入存货编码"
clearable
@keyup.enter.native="handleQuery"
/>
@@ -88,20 +78,7 @@
</el-date-picker>
</el-form-item>
<!-- <el-form-item label="仓库" prop="warehouseId"> &lt;!&ndash; 仓库 &ndash;&gt;-->
<!-- <el-select-->
<!-- v-model="queryParams.warehouseId"-->
<!-- placeholder="请选择仓库"-->
<!-- clearable-->
<!-- >-->
<!-- <el-option-->
<!-- v-for="dict in warehouseOptions"-->
<!-- :key="dict.warehouseId"-->
<!-- :label="dict.warehouseName"-->
<!-- :value="dict.warehouseId"-->
<!-- />-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <!-- 搜索 -->
@@ -141,28 +118,19 @@
<dict-tag :options="dict.type.mydo_job_status" :value="scope.row.status"/>
</template>
</el-table-column>
<!-- <el-table-column :label="$t('outJobManagement.onLineType')" align="left" prop="onLineType"> &lt;!&ndash; 上线类型 &ndash;&gt;
<template slot-scope="scope">
<dict-tag :options="dict.type.on_line_type" :value="scope.row.onLineType"/>
</template>
</el-table-column>-->
<el-table-column label="任务类型" align="left" prop="inOrOut"> <!-- 任务类型 -->
<template slot-scope="scope">
<dict-tag :options="dict.type.out_job_type" :value="scope.row.inOrOut"/>
</template>
</el-table-column>
<el-table-column label="任务号" align="left" prop="taskNo" /> <!-- 任务号 -->
<!-- <el-table-column :label="$t('outJobManagement.customerId')" align="left" prop="customerId" /> &lt;!&ndash; 客户ID &ndash;&gt;-->
<el-table-column label="序列号" align="left" prop="trayCode" width="130" sortable/>
<el-table-column label="巷道" align="left" prop="roadwayId" sortable/> <!-- 巷道ID -->
<el-table-column label="托盘码" align="left" prop="trayCode" width="130" />
<el-table-column label="货位名称" align="left" prop="cargoSpaceName" width="130"/> <!-- 货位ID -->
<el-table-column label="订单号" align="left" prop="lineId" width="130"/> <!-- 结束时间 -->
<el-table-column label="项目号" align="left" prop="lineId" width="130"/> <!-- 结束时间 -->
<el-table-column label="出口" align="left" prop="exitId"/> <!-- 出口ID -->
<el-table-column label="创建时间" align="left" prop="createTime" width="180" sortable/> <!-- 创建时间 -->
<el-table-column label="开始时间" align="left" prop="startTime" width="180" sortable/> <!-- 开始时间 -->
<el-table-column label="结束时间" align="left" prop="finishTime" width="180" sortable/> <!-- 结束时间 -->
<!-- <el-table-column :label="$t('outJobManagement.warehouseId')" align="left" prop="warehouseId" /> &lt;!&ndash; 仓库ID &ndash;&gt;-->
<!-- <el-table-column label="仓库ID" align="left" prop="warehouseName" /> &lt;!&ndash; 仓库ID &ndash;&gt;-->
</el-table>
<pagination
@@ -175,24 +143,21 @@
<el-table v-loading="detailLoading" :data="mydoJobDetailList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="子任务ID" align="left" prop="jobDetailId" width="160" /> <!-- 子任务ID -->
<el-table-column label="库存ID" align="left" prop="stockId" width="160" /> <!-- 库存ID -->
<el-table-column label="子单据ID" align="left" prop="inOrOutDId" width="160" /> <!-- 子单据ID -->
<el-table-column label="品号" align="left" prop="productId" />
<el-table-column label="品名" align="left" prop="productName" />
<el-table-column label="出库数量" align="right" prop="outQuantity" /> <!-- 出库数量 -->
<el-table-column label="子任务ID" align="left" prop="jobDetailId" width="160" />
<el-table-column label="库存ID" align="left" prop="stockId" width="160" />
<el-table-column label="子单据ID" align="left" prop="inOrOutDId" width="160" />
<el-table-column label="存货编码" align="left" prop="productId" />
<el-table-column label="存货名称" align="left" prop="productName" />
<el-table-column label="批次号" align="left" prop="lotNo" />
<el-table-column label="机型" align="left" prop="unit"/><!--机型-->
<el-table-column label="分销" align="left" prop="spare9"/><!--分销-->
<el-table-column label="规格" align="left" prop="spec"/><!--规格-->
<el-table-column label="型号" align="left" prop="spare1"/><!--型号-->
<el-table-column label="净重" align="left" prop="spare2"/><!--净重-->
<el-table-column label="颜色" align="left" prop="spare3"/><!--颜色-->
<el-table-column label="序列号" align="left" prop="spare4"/><!--序列号-->
<el-table-column label="电压" align="left" prop="spare5"/><!--电压-->
<el-table-column label="功率" align="left" prop="spare6"/><!--功率-->
<el-table-column label="相位" align="left" prop="spare7"/><!--相位-->
<el-table-column label="毛重" align="left" prop="spare8"/><!--毛重-->
<el-table-column label="客商名称" align="left" prop="stackingId"/>
<el-table-column label="层级关系" align="left" prop="spare1"/>
<el-table-column label="上层物料" align="left" prop="spare2"/>
<el-table-column label="顶层物料" align="left" prop="spare3"/>
<el-table-column label="项目号" align="left" prop="spare4"/>
<el-table-column label="合同号" align="left" prop="spare5"/>
<el-table-column label="销售订单" align="left" prop="spare6"/>
<el-table-column label="出库数量" align="right" prop="outQuantity" />
</el-table>
<pagination

View File

@@ -17,8 +17,8 @@
<!-- 端口 -->
<td class="el-table__cell is-leaf"><div class="cell">端口</div></td>
<td class="el-table__cell is-leaf"><div class="cell" v-if="cache.info">{{ cache.info.tcp_port }}</div></td>
<!-- 客户端数 -->
<td class="el-table__cell is-leaf"><div class="cell">客户端数</div></td>
<!-- 客商端数 -->
<td class="el-table__cell is-leaf"><div class="cell">客商端数</div></td>
<td class="el-table__cell is-leaf"><div class="cell" v-if="cache.info">{{ cache.info.connected_clients }}</div></td>
</tr>
<tr>

View File

@@ -2,16 +2,19 @@
<div class="app-container">
<!-- 主表信息录入 -->
<el-form :model="formData" ref="formRef" size="small" :inline="true" label-width="68px" :rules="rules">
<!-- <el-form-item :label="'仓库'" prop="warehouseId" required>&lt;!&ndash;仓库&ndash;&gt;-->
<!-- <el-select v-model="formData.warehouseId" :placeholder="'请选择仓库'" clearable>-->
<!-- <el-option-->
<!-- v-for="dict in warehouseOptions"-->
<!-- :key="dict.warehouseId"-->
<!-- :label="dict.warehouseName"-->
<!-- :value="dict.warehouseId"-->
<!-- />-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<el-form-item :label="'仓库'" prop="warehouseId" required><!--仓库-->
<el-select v-model="formData.warehouseId" :placeholder="'请选择仓库'" clearable>
<el-option
v-for="dict in warehouseOptions"
:key="dict.warehouseId"
:label="dict.warehouseName"
:value="dict.warehouseId"
/>
</el-select>
</el-form-item>
<el-form-item label="项目号" prop="departmentNo">
<el-input v-model="formData.departmentNo" placeholder="请输入项目号"/>
</el-form-item>
<el-form-item :label="'单据类型'" prop="outType" required><!--单据类型-->
<el-select v-model="formData.outType" :placeholder="'请选择单据类型'" clearable>
<el-option
@@ -22,16 +25,30 @@
/>
</el-select>
</el-form-item>
<el-form-item :label="'客户'" prop="customerNo" required><!--客户-->
<el-form-item :label="'出库方式'" prop="carNumber" required><!--出库方式-->
<el-select v-model="formData.carNumber" :placeholder="'请选择出库方式'" clearable>
<el-option
v-for="dict in dict.type.out_method"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item :label="'客商'" prop="customerNo" required><!--客商-->
<el-input
v-model="formData.customerName"
:placeholder="'请输入客户编号'"
v-model="formData.classNowId"
:placeholder="'请输入客商编号'"
clearable
@click.native="openCustomerSelector"
readonly
/>
</el-form-item>
<el-form-item label="备注" prop="spare5">
<el-input v-model="formData.spare5" placeholder="请输入备注"/>
</el-form-item>
<el-form-item>
<el-button type="warning" icon="el-icon-refresh" size="mini" @click="reset">{{'重置'}}<!--重置--></el-button>
<el-button type="success" icon="el-icon-check" size="mini" @click="handleSave" v-hasPermi="['out:outStockout:saveBill']">{{'保存单据'}}<!--保存单据--></el-button>
@@ -39,34 +56,31 @@
</el-form>
<div class="mb8">
<el-button type="primary" icon="el-icon-plus" size="mini" @click="handleSelectMaterials" v-hasPermi="['out:productAndStock:list']">{{'选择物资'}}<!--选择物资--></el-button>
<el-button type="primary" icon="el-icon-plus" size="mini" @click="handleSelectMaterials" v-hasPermi="['out:productAndStock:list']">{{'选择存货'}}<!--选择物资--></el-button>
<el-button type="info" icon="el-icon-refresh-right" size="mini" @click="handleReload">{{'重新建单'}}<!--重新建单--></el-button>
</div>
<!-- 物资明细表格 -->
<el-table v-loading="loading" :data="materialList">
<el-table-column label="品号" align="center" prop="productId" /><!--物资编号-->
<el-table-column label="品名" align="center" prop="productName" /><!--品名-->
<el-table-column label="存货编码" align="center" prop="productId" /><!--物资编号-->
<el-table-column label="存货名称" align="center" prop="productName" /><!--品名-->
<el-table-column label="批次号" align="center" prop="lotNo" />
<el-table-column label="订单号" align="center" prop="orderId" />
<el-table-column label="序列号" align="center" prop="printDate" />
<!-- <el-table-column :label="$t('addOutStockout.batchNo')" align="left" prop="lotNo" />&lt;!&ndash;批号&ndash;&gt;-->
<el-table-column label="仓库编码" align="center" prop="warehouseId" />
<el-table-column label="层级关系" align="center" prop="spare1" />
<el-table-column label="上层物料" align="center" prop="spare2" />
<el-table-column label="顶层物料" align="center" prop="spare3" />
<el-table-column label="项目号" align="center" prop="spare4" />
<el-table-column label="合同号" align="center" prop="spare5" />
<el-table-column label="销售订单号" align="center" prop="spare6" />
<el-table-column label="供应商编码" align="center" prop="fid" />
<el-table-column label="规格型号" align="center" prop="spec" />
<el-table-column label="计量单位" align="center" prop="unit" />
<el-table-column :label="'数量'" align="center" prop="quantity" width="150"><!--数量-->
<template slot-scope="scope">
<el-input-number v-model="scope.row.quantity" :min="1" size="mini" @change="handleQuantityChange(scope.row)" />
</template>
</el-table-column>
<el-table-column label="规格" align="center" prop="spec" />
<el-table-column label="单位" align="center" prop="unit" />
<el-table-column label="型号" align="center" prop="cargoNo" />
<el-table-column label="颜色" align="center" prop="price" />
<el-table-column label="电压" align="center" prop="voltage" />
<el-table-column label="功率" align="center" prop="power" />
<el-table-column label="相位" align="center" prop="phase" />
<el-table-column label="净重" align="center" prop="netWeight" />
<el-table-column label="毛重" align="center" prop="grossWeight" />
<el-table-column label="分销" align="center" prop="distribution" />
<el-table-column label="机型" align="center" prop="model" />
<el-table-column :label="'操作'" align="center" class-name="small-padding fixed-width"><!--操作-->
<template slot-scope="scope">
@@ -75,52 +89,66 @@
</el-table-column>
</el-table>
<!-- 选择物资弹窗 -->
<el-dialog :title="'选择物资'" :visible.sync="materialDialog" width="800px" append-to-body><!--选择物资-->
<!-- 选择存货弹窗 -->
<el-dialog :title="'选择存货'" :visible.sync="materialDialog" width="70%" append-to-body><!--选择存货-->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
<el-form-item label="品号" prop="productId"><!--品号-->
<el-form-item label="存货编码" prop="productId"><!--品号-->
<el-input
v-model="queryParams.productId"
:placeholder="'请输入品号'"
:placeholder="'请输入存货编码'"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="品名" prop="productName"><!--品名-->
<el-form-item label="存货名称" prop="productName"><!--品名-->
<el-input
v-model="queryParams.productName"
:placeholder="'请输入品名'"
:placeholder="'请输入存货名称'"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<!-- <el-form-item label="规格" prop="spare1">
<el-input v-model="queryParams.spare1" placeholder="请输入规格"
clearable
@keyup.enter.native="handleQuery"/>
<el-form-item label="层级关系" prop="spare1"><!--品名-->
<el-input
v-model="queryParams.spare1"
:placeholder="'请输入层级关系'"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="单位" prop="spare3">
<el-input v-model="queryParams.spare3" placeholder="请输入单位"
clearable
@keyup.enter.native="handleQuery"/>
<el-form-item label="上层物料" prop="spare2"><!--品名-->
<el-input
v-model="queryParams.spare2"
:placeholder="'请输入上层物料'"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="型号" prop="spare4">
<el-input v-model="queryParams.spare4" placeholder="请输入型号"
clearable
@keyup.enter.native="handleQuery"/>
<el-form-item label="顶层物料" prop="spare3"><!--品名-->
<el-input
v-model="queryParams.spare3"
:placeholder="'请输入顶层物料'"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="序列号" prop="spare6">
<el-input v-model="queryParams.spare6" placeholder="请输入序列号"
clearable
@keyup.enter.native="handleQuery"/>
</el-form-item>-->
<el-form-item label="订单号" prop="orderId">
<el-input v-model="queryParams.orderId" placeholder="请输入订单号"
clearable
@keyup.enter.native="handleQuery"/>
<el-form-item label="规格型号" prop="power"><!--品名-->
<el-input
v-model="queryParams.power"
:placeholder="'请输入规格型号'"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="计量单位" prop="phase"><!--品名-->
<el-input
v-model="queryParams.phase"
:placeholder="'请输入计量单位'"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{'搜索'}}<!--搜索--></el-button>
@@ -131,24 +159,21 @@
<el-table v-loading="materialLoading" :data="materialOptions" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="序号" align="center" prop="onlyIdentity" />
<el-table-column label="订单号" align="center" prop="orderId" />
<el-table-column label="品号" align="center" prop="productId" />
<el-table-column label="批次号" align="center" prop="lotNo" />
<el-table-column label="品名" align="center" prop="productName" />
<el-table-column label="数量" align="center" prop="quantity" />
<!-- <el-table-column label="仓库" align="center" prop="warehouseId" />-->
<el-table-column label="规格" align="center" prop="spare1" />
<el-table-column label="单位" align="center" prop="spare3" />
<el-table-column label="型号" align="center" prop="spare4" />
<el-table-column label="颜色" align="center" prop="spare5" />
<el-table-column label="序列号" align="center" prop="spare6" />
<el-table-column label="电压" align="center" prop="voltage" />
<el-table-column label="功率" align="center" prop="power" />
<el-table-column label="相位" align="center" prop="phase" />
<el-table-column label="净重" align="center" prop="netWeight" />
<el-table-column label="毛重" align="center" prop="grossWeight" />
<el-table-column label="分销" align="center" prop="distribution" />
<el-table-column label="机型" align="center" prop="model" />
<el-table-column label="存货编码" align="center" prop="productId" />
<el-table-column label="批号" align="center" prop="lotNo" />
<el-table-column label="存货名称" align="center" prop="productName" />
<el-table-column label="库存数量" align="center" prop="quantity" />
<el-table-column label="仓库编码" align="center" prop="warehouseId" />
<el-table-column label="供应商名称" align="center" prop="stackingId" />
<el-table-column label="层级关系" align="center" prop="spare1" />
<el-table-column label="上层物料" align="center" prop="spare2" />
<el-table-column label="顶层物料" align="center" prop="spare3" />
<el-table-column label="项目号" align="center" prop="spare4" />
<el-table-column label="合同号" align="center" prop="spare5" />
<el-table-column label="销售订单号" align="center" prop="spare6" />
<el-table-column label="供应商编码" align="center" prop="voltage" />
<el-table-column label="规格型号" align="center" prop="power" />
<el-table-column label="计量单位" align="center" prop="phase" />
</el-table>
<pagination
@@ -165,21 +190,21 @@
</div>
</el-dialog>
<!-- 选择客户弹窗 -->
<el-dialog :title="'客户管理'" :visible.sync="customerDialog" width="800px" append-to-body>
<!-- 选择客商弹窗 -->
<el-dialog :title="'客商管理'" :visible.sync="customerDialog" width="70%" append-to-body>
<el-form :model="customerQueryParams" ref="customerQueryForm" size="small" :inline="true" label-width="100px">
<el-form-item :label="'客户编号'" prop="customerNo"><!--客户编号-->
<el-form-item :label="'客商编号'" prop="customerNo"><!--客商编号-->
<el-input
v-model="customerQueryParams.customerNo"
:placeholder="'请输入客户编号'"
:placeholder="'请输入客商编号'"
clearable
@keyup.enter.native="handleCustomerQuery"
/>
</el-form-item>
<el-form-item :label="'客户名称'" prop="customerName"><!--客户名称-->
<el-form-item :label="'客商名称'" prop="customerName"><!--客商名称-->
<el-input
v-model="customerQueryParams.customerName"
:placeholder="'请输入客户名称'"
:placeholder="'请输入客商名称'"
clearable
@keyup.enter.native="handleCustomerQuery"
/>
@@ -191,9 +216,9 @@
</el-form>
<el-table ref="customerTable" v-loading="customerLoading" :data="customerList" @row-click="handleCustomerRowClick" highlight-current-row>
<el-table-column :label="'客户编号'" align="left" prop="customerNo" /><!--客户编号-->
<el-table-column :label="'客户名称'" align="left" prop="customerName" /><!--客户名称-->
<!-- <el-table-column :label="$t('basCustomer.simpleName')" align="left" prop="simpleName" />客户简称 -->
<el-table-column :label="'客商编号'" align="left" prop="customerNo" /><!--客商编号-->
<el-table-column :label="'客商名称'" align="left" prop="customerName" /><!--客商名称-->
<!-- <el-table-column :label="$t('basCustomer.simpleName')" align="left" prop="simpleName" />客商简称 -->
<el-table-column :label="'是否可用'" align="left" prop="useable">
<template slot-scope="scope">
<dict-tag :options="dict.type.is_available" :value="scope.row.useable"/>
@@ -225,7 +250,7 @@ import Pagination from "@/components/Pagination";
export default {
name: "AddOutStock",
dicts: ['out_bill_type', 'bill_status', 'is_available'],
dicts: ['out_bill_type', 'bill_status', 'is_available','out_method'],
components: {
Pagination
},
@@ -240,28 +265,38 @@ export default {
customerTotal: 0,
// 表单验证规则
rules: {
// warehouseId: [
// { required: true, message: '请选择仓库', trigger: "change" }
// ],
warehouseId: [
{ required: true, message: '请选择仓库', trigger: "change" }
],
customerNo: [
{ required: true, message: '请输入客户编号', trigger: "blur" }
{ required: true, message: '请输入客商编号', trigger: "blur" }
],
outType: [
{ required: true, message: '请选择单据类型', trigger: "change" }
],
outMethod: [
{ required: true, message: '请选择出库方式', trigger: "change" }
],
departmentNo: [
{ required: true, message: '请输入项目号', trigger: "change" }
]
},
// 主表数据
formData: {
// warehouseId: null,
warehouseId: null,
customerNo: null,
customerName: null, // 添加客户名称字段,用于显示
outType: null
customerName: null, // 添加客商名称字段,用于显示
outType: null,
carNumber:null,
departmentNo:null,
classNowId:null,
spare5:null
},
// 仓库选项
warehouseOptions: [],
// 物资明细列表
materialList: [],
// 选择物资弹窗
// 选择存货弹窗
materialDialog: false,
// 物资选项数据
materialOptions: [],
@@ -291,19 +326,19 @@ export default {
model: null,
orderId: null
},
// 客户选择弹窗
// 客商选择弹窗
customerDialog: false,
// 客户列表数据
// 客商列表数据
customerList: [],
// 当前选中的客户
// 当前选中的客商
selectedCustomer: null,
// 客户查询参数
// 客商查询参数
customerQueryParams: {
pageNum: 1,
pageSize: 10,
customerNo: null,
customerName: null,
useable: '1' // 默认只查询可用的客户
useable: '1' // 默认只查询可用的客商
}
};
},
@@ -321,12 +356,12 @@ export default {
this.warehouseOptions = response.rows;
});
},
/** 打开客户选择弹窗 */
/** 打开客商选择弹窗 */
openCustomerSelector() {
this.customerDialog = true;
this.getCustomerList();
},
/** 获取客户列表 */
/** 获取客商列表 */
getCustomerList() {
this.customerLoading = true;
listBasCustomer(this.customerQueryParams).then(response => {
@@ -335,45 +370,50 @@ export default {
this.customerLoading = false;
});
},
/** 客户搜索按钮操作 */
/** 客商搜索按钮操作 */
handleCustomerQuery() {
this.customerQueryParams.pageNum = 1;
this.getCustomerList();
},
/** 客户重置按钮操作 */
/** 客商重置按钮操作 */
resetCustomerQuery() {
this.resetForm("customerQueryForm");
this.customerQueryParams.useable = '1'; // 保持默认只查询可用的客户
this.customerQueryParams.useable = '1'; // 保持默认只查询可用的客商
this.handleCustomerQuery();
},
/** 客户行点击事件 */
/** 客商行点击事件 */
handleCustomerRowClick(row) {
this.selectedCustomer = row;
this.$refs['customerTable']?.setCurrentRow(row);
},
/** 确认选择客户 */
/** 确认选择客商 */
confirmSelectCustomer() {
if (!this.selectedCustomer) {
this.$modal.msgError('请选择客户');
this.$modal.msgError('请选择客商');
return;
}
this.formData.customerNo = this.selectedCustomer.customerNo;
this.formData.customerName = this.selectedCustomer.customerName;
this.formData.classNowId = this.selectedCustomer.customerName;
this.customerDialog = false;
},
/** 取消选择客户 */
/** 取消选择客商 */
cancelSelectCustomer() {
this.selectedCustomer = null;
this.customerDialog = false;
},
/** 打开选择物资弹窗 */
/** 打开选择存货弹窗 */
handleSelectMaterials() {
// if (!this.formData.warehouseId) {
// this.$modal.msgError('请选择仓库');
// return;
// }
if (!this.formData.warehouseId) {
this.$modal.msgError('请选择仓库');
return;
}
if (!this.formData.departmentNo) {
this.$modal.msgError('请输入项目号');
return;
}
this.materialDialog = true;
// this.queryParams.warehouseId = this.formData.warehouseId;
this.queryParams.warehouseId = this.formData.warehouseId;
this.queryParams.spare4 = this.formData.departmentNo;
this.getMaterialList();
},
/** 获取物资列表 */
@@ -389,10 +429,10 @@ export default {
handleSelectionChange(selection) {
this.selectedMaterials = selection;
},
/** 确认选择物资 */
/** 确认选择存货 */
confirmSelectMaterials() {
if (this.selectedMaterials.length === 0) {
this.$modal.msgError('请选择物资');
this.$modal.msgError('请选择存货');
return;
}
// 过滤掉已经存在的物资
@@ -411,28 +451,23 @@ export default {
productName: item.productName,
quantity: item.quantity,
quantityOrignal: item.quantity,
voltage: item.voltage,
phase: item.phase,
power: item.power,
netWeight: item.netWeight,
grossWeight: item.grossWeight,
distribution: item.distribution,
model: item.model,
orderId: item.orderId,
unit: item.spare3,
spec: item.spare1,
cargoNo: item.spare4,
printDate:item.spare6,
price:item.spare5,
warehouseId: item.warehouseId,
fid: item.voltage,
unit: item.phase,
spec: item.power,
lotNo: item.lotNo,
onlyIdentity: item.onlyIdentity
warehouseId: item.warehouseId,
spare1: item.spare1,
spare2: item.spare2,
spare3: item.spare3,
spare4: item.spare4,
spare5: item.spare5,
spare6: item.spare6,
}))
);
this.materialDialog = false;
this.selectedMaterials = [];
},
/** 取消选择物资 */
/** 取消选择存货 */
cancelSelectMaterials() {
this.selectedMaterials = [];
this.materialDialog = false;
@@ -469,7 +504,7 @@ export default {
this.$refs.formRef.validate(valid => {
if (valid) {
if (this.materialList.length === 0) {
this.$modal.msgError('请选择物资');
this.$modal.msgError('请选择存货选择存货');
return;
}
const data = {

View File

@@ -2,6 +2,21 @@
<div class="app-container">
<!-- 查询表单 -->
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item :label="'仓库'" prop="warehouseId"><!--仓库-->
<el-select
v-model="queryParams.warehouseId"
:placeholder="'请选择仓库'"
clearable
@change="handleQuery"
>
<el-option
v-for="item in warehouseOptions"
:key="item.warehouseId"
:label="item.warehouseName"
:value="item.warehouseId"
/>
</el-select>
</el-form-item>
<el-form-item :label="'出库单编号'" prop="stockoutId"> <!-- 出库单编号 -->
<el-input
v-model="queryParams.stockoutId"
@@ -30,18 +45,18 @@
/>
</el-select>
</el-form-item>
<el-form-item :label="'客户名称'" prop="customerName">
<el-form-item :label="'客商名称'" prop="customerName">
<el-input
v-model="queryParams.customerName"
:placeholder="'请输入客户名称'"
:placeholder="'请输入客商名称'"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item :label="'品名'" prop="productName">
<el-form-item :label="'存货名称'" prop="productName">
<el-input
v-model="queryParams.productName"
:placeholder="'请输入品名'"
:placeholder="'请输入存货名称'"
clearable
@keyup.enter.native="handleQuery"
/>
@@ -57,21 +72,7 @@
:default-time="['00:00:00', '23:59:59']"
/>
</el-form-item>
<!-- <el-form-item :label="'仓库'" prop="warehouseId">&lt;!&ndash;仓库&ndash;&gt;-->
<!-- <el-select-->
<!-- v-model="queryParams.warehouseId"-->
<!-- :placeholder="'请选择仓库'"-->
<!-- clearable-->
<!-- @change="handleQuery"-->
<!-- >-->
<!-- <el-option-->
<!-- v-for="item in warehouseOptions"-->
<!-- :key="item.warehouseId"-->
<!-- :label="item.warehouseName"-->
<!-- :value="item.warehouseId"-->
<!-- />-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">{{'搜索'}}</el-button> <!-- 搜索 -->
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">{{'重置'}}</el-button> <!-- 重置 -->
@@ -146,14 +147,30 @@
<dict-tag :options="dict.type.out_bill_status" :value="scope.row.status"/>
</template>
</el-table-column>
<el-table-column :label="'出口'" align="left" prop="exitId" sortable/>
<!-- <el-table-column :label="'客户编码'" align="left" prop="customerNo" />-->
<el-table-column :label="'客户名称'" align="left" prop="customerName" width="200"/>
<el-table-column :label="'项目号'" align="left" prop="departmentNo" />
<el-table-column :label="'客商代号'" align="left" prop="customerNo"/>
<el-table-column :label="'客商名称'" align="left" prop="classNowId"/>
<el-table-column :label="'建单人'" align="left" prop="createManId" />
<el-table-column :label="'出库方式'" align="left" prop="carNumber">
<template slot-scope="scope">
<dict-tag :options="dict.type.out_method" :value="scope.row.carNumber"/>
</template>
</el-table-column>
<el-table-column :label="'单据来源'" align="left" prop="stockoutSource">
<template slot-scope="scope">
<dict-tag :options="dict.type.bill_resource" :value="scope.row.stockoutSource"/>
</template>
</el-table-column>
<el-table-column :label="'仓库编码'" align="left" prop="warehouseId"/>
<el-table-column :label="'仓库名称'" align="left" prop="warehouseName"/>
<!-- <el-table-column :label="'合同号'" align="left" prop="spare1" />-->
<!-- <el-table-column :label="'销售订单号'" align="left" prop="spare2" />-->
<el-table-column :label="'审核时间'" align="left" prop="spare3" />
<el-table-column :label="'审核人'" align="left" prop="spare4" />
<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="finishDate" width="160" sortable/>
<!-- <el-table-column :label="'仓库名称'" align="left" prop="warehouseName" />-->
<el-table-column :label="'备注'" align="left" prop="spare5" />
</el-table>
<pagination
@@ -168,26 +185,22 @@
<el-table v-loading="detailLoading" :data="outStockDetailList" style="margin-top: 20px;" @selection-change="handleDetailSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column :label="'出库子单编号'" align="center" prop="stockoutDetailId" width="160" /> <!-- 出库子单编号 -->
<el-table-column :label="'品号'" align="center" prop="productId" sortable/> <!-- 品号 -->
<el-table-column :label="'品名'" align="center" prop="productName" />
<el-table-column :label="'批次号'" align="center" prop="lotNo"/><!--英文描述-->
<el-table-column :label="'序列号'" align="center" prop="printDate"/> <!--序列号-->
<el-table-column label="订单号" align="center" prop="orderId" width="160" />
<el-table-column :label="'计划数量'" align="center" prop="quantity" /> <!-- 计划数量 -->
<el-table-column :label="'分配数量'" align="center" prop="allotQuantity" /> <!-- 分配数量 -->
<el-table-column :label="'实际数量'" align="center" prop="assignNum" /> <!-- 实际数量 -->
<el-table-column :label="'颜色'" align="center" prop="price"/><!--箱号-->
<el-table-column :label="'单位'" align="center" prop="unit"/><!--单位-->
<el-table-column :label="'规格'" align="center" prop="spec" /> <!--规格-->
<el-table-column :label="'型号'" align="center" prop="cargoNo" /> <!--型号-->
<el-table-column label="电压" align="center" prop="voltage" />
<el-table-column label="功率" align="center" prop="power" />
<el-table-column label="相位" align="center" prop="phase" />
<el-table-column label="净重" align="center" prop="netWeight" />
<el-table-column label="毛重" align="center" prop="grossWeight" />
<el-table-column label="分销" align="center" prop="distribution" />
<el-table-column label="机型" align="center" prop="model" />
<el-table-column :label="'备注'" align="center" prop="remark" /> <!-- 备注 -->
<el-table-column :label="'存货编码'" align="center" prop="productId" sortable/>
<el-table-column :label="'存货名称'" align="center" prop="productName" />
<el-table-column :label="'批次号'" align="center" prop="lotNo"/>
<el-table-column :label="'供应商编码'" align="center" prop="fid"/>
<el-table-column :label="'计量单位'" align="center" prop="unit"/>
<el-table-column :label="'规格型号'" align="center" prop="spec"/>
<el-table-column :label="'层次关系'" align="center" prop="spare1"/>
<el-table-column :label="'上层物料'" align="center" prop="spare2"/>
<el-table-column :label="'顶层物料'" align="center" prop="spare3"/>
<el-table-column :label="'项目号'" align="center" prop="spare4"/>
<el-table-column :label="'合同号'" align="center" prop="spare5"/>
<el-table-column :label="'销售订单'" align="center" prop="spare6"/>
<el-table-column :label="'出库数量'" align="center" prop="quantity"/>
<el-table-column :label="'分配数量'" align="center" prop="allotQuantity"/>
<el-table-column :label="'实际数量'" align="center" prop="assignNum"/>
<!-- <el-table-column :label="'备注'" align="center" prop="remark"/>-->
</el-table>
<!-- <pagination-->
@@ -311,13 +324,19 @@
</template>
<script>
import { listOutStockout,autoAllot,listOut,manualAllot} from "@/api/out/outStockout"
import { getOutStockoutDetail,updateOutStockStatus } from "@/api/out/outStockout"
import {
autoAllot,
getOutStockoutDetail,
listOut,
listOutStockout,
manualAllot,
updateOutStockStatus
} from "@/api/out/outStockout"
import {listWarehouse} from "@/api/bas/warehouse";
export default {
name: "OutStockWithDetail",
dicts: ['out_bill_type', 'out_bill_status'],
dicts: ['out_bill_type', 'out_bill_status', 'out_method', 'bill_resource'],
data() {
return {
// 遮罩层

File diff suppressed because it is too large Load Diff

View File

@@ -1,34 +1,10 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<!-- <el-form-item label="546 guid" prop="stockoutGuid">-->
<!-- <el-input-->
<!-- v-model="queryParams.stockoutGuid"-->
<!-- placeholder="请输入546 guid"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<el-form-item label="出库单ID" prop="stockoutId">
<el-form-item label="出库单号" prop="stockoutId">
<el-input
v-model="queryParams.stockoutId"
placeholder="请输入出库单ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="出库子单ID" prop="stockoutDetailId">
<el-input
v-model="queryParams.stockoutDetailId"
placeholder="请输入出库子单ID"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="项目号" prop="departmentNo">
<el-input
v-model="queryParams.departmentNo"
placeholder="请输入项目号"
placeholder="请输入出库单号"
clearable
@keyup.enter.native="handleQuery"
/>
@@ -43,8 +19,8 @@
/>
</el-select>
</el-form-item>
<el-form-item label="单据状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择单据状态" clearable>
<el-form-item label="出库状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择出库状态" clearable>
<el-option
v-for="dict in dict.type.out_bill_status"
:key="dict.value"
@@ -53,201 +29,56 @@
/>
</el-select>
</el-form-item>
<!-- <el-form-item label="546 单据时间" prop="createDate">-->
<!-- <el-input-->
<!-- v-model="queryParams.createDate"-->
<!-- placeholder="请输入546 单据时间"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="客户编码" prop="customerNo">-->
<!-- <el-input-->
<!-- v-model="queryParams.customerNo"-->
<!-- placeholder="请输入客户编码546"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="制单人546" prop="createManId">-->
<!-- <el-input-->
<!-- v-model="queryParams.createManId"-->
<!-- placeholder="请输入制单人546"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="单据来源0自建单1接口" prop="stockoutSource">-->
<!-- <el-input-->
<!-- v-model="queryParams.stockoutSource"-->
<!-- placeholder="请输入单据来源0自建单1接口"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="仓库ID546" prop="warehouseId">-->
<!-- <el-input-->
<!-- v-model="queryParams.warehouseId"-->
<!-- placeholder="请输入仓库ID546"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="客户名称546" prop="classNowId">-->
<!-- <el-input-->
<!-- v-model="queryParams.classNowId"-->
<!-- placeholder="请输入客户名称546"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="出口" prop="exitId">-->
<!-- <el-input-->
<!-- v-model="queryParams.exitId"-->
<!-- placeholder="请输入出口"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="合同号546" prop="spare1">-->
<!-- <el-input-->
<!-- v-model="queryParams.spare1"-->
<!-- placeholder="请输入合同号546"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="销售订单号546" prop="spare2">-->
<!-- <el-input-->
<!-- v-model="queryParams.spare2"-->
<!-- placeholder="请输入销售订单号546"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="审核时间546" prop="spare3">-->
<!-- <el-input-->
<!-- v-model="queryParams.spare3"-->
<!-- placeholder="请输入审核时间546"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="审核人546" prop="spare4">-->
<!-- <el-input-->
<!-- v-model="queryParams.spare4"-->
<!-- placeholder="请输入审核人546"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="备注546" prop="spare5">-->
<!-- <el-input-->
<!-- v-model="queryParams.spare5"-->
<!-- placeholder="请输入备注546"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="546 批次" prop="lotNo">-->
<!-- <el-input-->
<!-- v-model="queryParams.lotNo"-->
<!-- placeholder="请输入546 批次"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<el-form-item label="物料编码" prop="productId">
<el-form-item label="订单号" prop="erpStockoutId">
<el-input
v-model="queryParams.erpStockoutId"
placeholder="请输入订单号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="品号" prop="productId">
<el-input
v-model="queryParams.productId"
placeholder="请输入物料编码"
placeholder="请输入品号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<!-- <el-form-item label="546 数量" prop="quantity">-->
<!-- <el-input-->
<!-- v-model="queryParams.quantity"-->
<!-- placeholder="请输入546 数量"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="货位实际数量" prop="assignNum">-->
<!-- <el-input-->
<!-- v-model="queryParams.assignNum"-->
<!-- placeholder="请输入货位实际数量"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="货位分配数量" prop="allotQuantity">-->
<!-- <el-input-->
<!-- v-model="queryParams.allotQuantity"-->
<!-- placeholder="请输入货位分配数量"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="计量单位546" prop="unit">-->
<!-- <el-input-->
<!-- v-model="queryParams.unit"-->
<!-- placeholder="请输入计量单位546"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="规格型号546" prop="spec">-->
<!-- <el-input-->
<!-- v-model="queryParams.spec"-->
<!-- placeholder="请输入规格型号546"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<el-form-item label="物料名称" prop="productName">
<el-form-item label="品名" prop="productName">
<el-input
v-model="queryParams.productName"
placeholder="请输入物料名称"
placeholder="请输入品名"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<!-- <el-form-item label="层级关系546" prop="cjgx">-->
<!-- <el-input-->
<!-- v-model="queryParams.cjgx"-->
<!-- placeholder="请输入层级关系546"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="上层物料546" prop="scwl">-->
<!-- <el-input-->
<!-- v-model="queryParams.scwl"-->
<!-- placeholder="请输入上层物料546"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="顶层物料546" prop="dcwl">-->
<!-- <el-input-->
<!-- v-model="queryParams.dcwl"-->
<!-- placeholder="请输入顶层物料546"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<!-- <el-form-item label="货位,托盘加数量按逗号分开546" prop="spare9">-->
<!-- <el-input-->
<!-- v-model="queryParams.spare9"-->
<!-- placeholder="请输入货位,托盘加数量按逗号分开546"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<el-form-item label="序列号" prop="spare4">
<el-input
v-model="queryParams.spare4"
placeholder="请输入序列号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="开始时间" prop="startTime"> <!-- 开始时间 -->
<el-date-picker clearable
v-model="queryParams.startTime"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择开始时间" style="width: 206px">
</el-date-picker>
</el-form-item>
<el-form-item label="结束时间" prop="finishTime"> <!-- 结束时间 -->
<el-date-picker clearable
v-model="queryParams.finishTime"
type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
placeholder="请选择结束时间" style="width: 206px">
</el-date-picker>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
@@ -300,48 +131,80 @@
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="ViewStockoutHistoryList" >
<!-- <el-table-column type="selection" width="55" align="center" />-->
<!-- <el-table-column label="546 guid" align="center" prop="stockoutGuid" />-->
<el-table-column width="180" label="出库单ID" align="center" prop="stockoutId" />
<el-table-column width="180" label="子单ID" align="center" prop="stockoutDetailId" />
<el-table-column width="180" label="项目号" align="center" prop="departmentNo" />
<el-table-column width="180" label="物料编码" align="center" prop="productId" />
<el-table-column width="180" label="物料名称" align="center" prop="productName" />
<el-table-column width="180" label="批次号" align="center" prop="lotNo" />
<el-table-column width="100" label="数量" align="center" prop="quantity" />
<el-table-column width="180" label="货位分配数量" align="center" prop="allotQuantity" />
<el-table-column width="180" label="货位实际数量" align="center" prop="assignNum" />
<el-table-column width="100" label="出库类型" align="center" prop="outType">
<el-table v-loading="loading" :data="ViewStockoutHistoryList" @selection-change="handleSelectionChange" max-height="650">
<el-table-column type="selection" width="55" align="center" />
<el-table-column width="160" label="出库单号" align="left" prop="stockoutId" />
<el-table-column width="160" label="出库子单号" align="left" prop="stockoutDetailId" />
<el-table-column label="出库类型" align="center" prop="outType">
<template slot-scope="scope">
<dict-tag :options="dict.type.out_bill_type" :value="scope.row.outType"/>
</template>
</el-table-column>
<el-table-column width="180" label="审核人546" align="center" prop="spare4" />
<el-table-column width="180" label="审核时间546" align="center" prop="spare3" />
<el-table-column width="180" label="销售订单号546" align="center" prop="spare2" />
<el-table-column width="180" label="合同号546" align="center" prop="spare1" />
<el-table-column width="180" label="客户编码546" align="center" prop="customerNo" />
<el-table-column width="180" label="客户名称546" align="center" prop="classNowId" />
<el-table-column width="180" label="计量单位546" align="center" prop="unit" />
<el-table-column width="180" label="规格型号546" align="center" prop="spec" />
<el-table-column width="180" label="层级关系546" align="center" prop="cjgx" />
<el-table-column width="180" label="上层物料546" align="center" prop="scwl" />
<el-table-column width="180" label="顶层物料546" align="center" prop="dcwl" />
<el-table-column width="180" label="546 单据时间" align="center" prop="createDate" />
<el-table-column width="180" label="制单人546" align="center" prop="createManId" />
<el-table-column width="180" label="仓库ID546" align="center" prop="warehouseId" />
<el-table-column width="100" label="546 单据状态" align="center" prop="status">
<el-table-column label="出库状态" align="center" prop="status">
<template slot-scope="scope">
<dict-tag :options="dict.type.out_bill_status" :value="scope.row.status"/>
</template>
</el-table-column>
<el-table-column width="100" label="单据来源0自建单1接口" align="center" prop="stockoutSource" />
<el-table-column width="100" label="出口" align="center" prop="exitId" />
<!-- <el-table-column label="备注546" align="center" prop="spare5" />-->
<el-table-column width="180" label="备注" align="center" prop="remark" />
<el-table-column width="180" label="货位,托盘加数量按逗号分开546" align="center" prop="spare9" />
<!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">-->
<el-table-column label="创建人ID" align="center" prop="createManId" width="160"/>
<el-table-column width="160" label="订单号" align="left" prop="erpStockoutId" />
<el-table-column label="创建时间" align="center" prop="createDate" width="160" sortable/>
<el-table-column label="开始时间" align="center" prop="startDate" width="160"/>
<el-table-column label="完成时间" align="center" prop="finishDate" width="160"/>
<el-table-column width="160" label="品号" align="left" prop="productId" />
<el-table-column width="160" label="品名" align="left" prop="productName" />
<el-table-column width="160" label="出库数量" align="right" prop="quantity" />
<el-table-column width="160" label="分配数量" align="right" prop="allotQuantity" />
<el-table-column width="160" label="确认数量" align="right" prop="assignNum" />
<el-table-column width="160" label="批次号" align="left" prop="lotNo" />
<el-table-column width="160" label="客商名称" align="left" prop="customerName" />
<!-- <el-table-column label="物料主键" align="center" prop="productGuid" />-->
<!-- <el-table-column width="120" label="产品分类" align="left" prop="parentId" />-->
<el-table-column width="160" label="品号描述" align="left" prop="price" />
<el-table-column width="160" label="英文描述" align="left" prop="cargoNo" />
<el-table-column width="160" label="图号" align="left" prop="unit" />
<el-table-column width="160" label="规格" align="left" prop="spec" />
<!-- <el-table-column label="型号" align="center" prop="spare1" />-->
<!-- <el-table-column label="单件净重" align="center" prop="spare2" />-->
<!-- <el-table-column label="颜色" align="center" prop="spare3" />-->
<!-- <el-table-column label="序列号" align="center" prop="spare4" />-->
<!-- <el-table-column label="电压" align="center" prop="spare5" />-->
<!-- <el-table-column label="功率" align="center" prop="spare6" />-->
<!-- <el-table-column label="相位" align="center" prop="spare7" />-->
<!-- <el-table-column label="毛重" align="center" prop="spare8" />-->
<el-table-column width="160" label="NC号" align="left" prop="spare9" />
<el-table-column width="160" label="电源线" align="left" prop="spare10" />
<el-table-column width="160" label="插头" align="left" prop="spare11" />
<el-table-column width="160" label="接嘴" align="left" prop="spare12" />
<el-table-column width="160" label="快捷码" align="left" prop="spare13" />
<el-table-column width="160" label="库存单位编号" align="left" prop="spare14" />
<el-table-column width="160" label="库存单位名称" align="left" prop="spare15" />
<el-table-column width="160" label="品号群组" align="left" prop="spare16" />
<el-table-column width="160" label="归类品" align="left" prop="spare17" />
<el-table-column width="160" label="计量体系" align="left" prop="spare18" />
<el-table-column width="160" label="群组名称" align="left" prop="spare19" />
<el-table-column width="160" label="批号管理" align="left" prop="spare20" />
<el-table-column width="160" label="状态" align="left" prop="spare21" />
<el-table-column width="160" label="产品大类" align="left" prop="spare22" />
<el-table-column width="160" label="产品二类" align="left" prop="spare23" />
<el-table-column width="160" label="产品线/产品系列" align="left" prop="spare24" />
<el-table-column width="160" label="BOM状态" align="left" prop="spare25" />
<el-table-column width="160" label="产品定位" align="left" prop="spare26" />
<el-table-column width="160" label="电脑板型号" align="left" prop="spare27" />
<el-table-column width="160" label="非标要求" align="left" prop="spare28" />
<el-table-column width="160" label="品牌" align="left" prop="spare29" />
<el-table-column width="160" label="非标颜色" align="left" prop="spare30" />
<el-table-column width="160" label="主颜色" align="left" prop="spare31" />
<el-table-column width="160" label="辅助颜色" align="left" prop="spare32" />
<el-table-column width="160" label="是否标准款" align="left" prop="spare33" />
<el-table-column width="160" label="包装方式" align="left" prop="spare34" />
<el-table-column width="160" label="主要包装方式" align="left" prop="spare35" />
<el-table-column width="160" label="长" align="right" prop="spare36" />
<el-table-column width="160" label="宽" align="right" prop="spare37" />
<el-table-column width="160" label="高" align="right" prop="spare38" />
<el-table-column width="160" label="包装材积" align="right" prop="spare39" />
<el-table-column width="160" label="描述" align="left" prop="remark" />
<!-- <el-table-column width="120" label="操作" align="center" class-name="small-padding fixed-width">-->
<!-- <template slot-scope="scope">-->
<!-- <el-button-->
<!-- size="mini"-->
@@ -372,14 +235,11 @@
<!-- 添加或修改出库单据历史对话框 -->
<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-item label="546 guid" prop="stockoutGuid">
<el-input v-model="form.stockoutGuid" placeholder="请输入546 guid" />
<el-form-item label="出库单号" prop="stockoutId">
<el-input v-model="form.stockoutId" placeholder="请输入出库单号" />
</el-form-item>
<el-form-item label="546 单据编码" prop="stockoutId">
<el-input v-model="form.stockoutId" placeholder="请输入546 单据编码" />
</el-form-item>
<el-form-item label="546 出库类型" prop="outType">
<el-select v-model="form.outType" placeholder="请选择546 出库类型">
<el-form-item label="出库类型" prop="outType">
<el-select v-model="form.outType" placeholder="请选择出库类型">
<el-option
v-for="dict in dict.type.out_bill_type"
:key="dict.value"
@@ -388,96 +248,197 @@
></el-option>
</el-select>
</el-form-item>
<el-form-item label="546 单据时间" prop="createDate">
<el-input v-model="form.createDate" placeholder="请输入546 单据时间" />
<el-form-item label="创建日期" prop="createDate">
<el-input v-model="form.createDate" placeholder="请输入创建日期" />
</el-form-item>
<el-form-item label="项目号546" prop="departmentNo">
<el-input v-model="form.departmentNo" placeholder="请输入项目号546" />
<el-form-item label="创建人ID" prop="createManId">
<el-input v-model="form.createManId" placeholder="请输入创建人ID" />
</el-form-item>
<el-form-item label="客户编码546" prop="customerNo">
<el-input v-model="form.customerNo" placeholder="请输入客户编码546" />
</el-form-item>
<el-form-item label="制单人546" prop="createManId">
<el-input v-model="form.createManId" placeholder="请输入制单人546" />
</el-form-item>
<el-form-item label="546 单据状态" prop="status">
<el-select v-model="form.status" placeholder="请选择546 单据状态">
<el-option
<el-form-item label="出库状态" prop="status">
<el-radio-group v-model="form.status">
<el-radio
v-for="dict in dict.type.out_bill_status"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
:label="dict.value"
>{{dict.label}}</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="单据来源0自建单1接口" prop="stockoutSource">
<el-input v-model="form.stockoutSource" placeholder="请输入单据来源0自建单1接口" />
</el-form-item>
<el-form-item label="仓库ID546" prop="warehouseId">
<el-input v-model="form.warehouseId" placeholder="请输入仓库ID546" />
</el-form-item>
<el-form-item label="客户名称546" prop="classNowId">
<el-input v-model="form.classNowId" placeholder="请输入客户名称546" />
<el-form-item label="出库来源" prop="stockoutSource">
<el-input v-model="form.stockoutSource" placeholder="请输入出库来源" />
</el-form-item>
<el-form-item label="出口" prop="exitId">
<el-input v-model="form.exitId" placeholder="请输入出口" />
</el-form-item>
<el-form-item label="合同号546" prop="spare1">
<el-input v-model="form.spare1" placeholder="请输入合同号546" />
<el-form-item label="仓库ID" prop="warehouseId">
<el-input v-model="form.warehouseId" placeholder="请输入仓库ID" />
</el-form-item>
<el-form-item label="销售订单号546" prop="spare2">
<el-input v-model="form.spare2" placeholder="请输入销售订单号546" />
<el-form-item label="出库明细ID" prop="stockoutDetailId">
<el-input v-model="form.stockoutDetailId" placeholder="请输入出库明细ID" />
</el-form-item>
<el-form-item label="审核时间546" prop="spare3">
<el-input v-model="form.spare3" placeholder="请输入审核时间546" />
<el-form-item label="批次号" prop="lotNo">
<el-input v-model="form.lotNo" placeholder="请输入批次号" />
</el-form-item>
<el-form-item label="审核人546" prop="spare4">
<el-input v-model="form.spare4" placeholder="请输入审核人546" />
<el-form-item label="出库数量" prop="quantity">
<el-input v-model="form.quantity" placeholder="请输入出库数量" />
</el-form-item>
<el-form-item label="备注546" prop="spare5">
<el-input v-model="form.spare5" placeholder="请输入备注546" />
<el-form-item label="分配数量" prop="allotQuantity">
<el-input v-model="form.allotQuantity" placeholder="请输入分配数量" />
</el-form-item>
<el-form-item label="546 子单" prop="stockoutDetailId">
<el-input v-model="form.stockoutDetailId" placeholder="请输入546 子单" />
<el-form-item label="分配编号" prop="assignNum">
<el-input v-model="form.assignNum" placeholder="请输入分配编号" />
</el-form-item>
<el-form-item label="546 批次" prop="lotNo">
<el-input v-model="form.lotNo" placeholder="请输入546 批次" />
<el-form-item label="ERP出库单ID" prop="erpStockoutId">
<el-input v-model="form.erpStockoutId" placeholder="请输入ERP出库单ID" />
</el-form-item>
<el-form-item label="546 资材编码" prop="productId">
<el-input v-model="form.productId" placeholder="请输入546 资材编码" />
<el-form-item label="客商编号" prop="entryid">
<el-input v-model="form.entryid" placeholder="请输入客商编号" />
</el-form-item>
<el-form-item label="546 数量" prop="quantity">
<el-input v-model="form.quantity" placeholder="请输入546 数量" />
<el-form-item label="客商名称" prop="customerName">
<el-input v-model="form.customerName" placeholder="请输入客商名称" />
</el-form-item>
<el-form-item label="货位实际数量" prop="assignNum">
<el-input v-model="form.assignNum" placeholder="请输入货位实际数量" />
<el-form-item label="物料主键" prop="productGuid">
<el-input v-model="form.productGuid" placeholder="请输入物料主键" />
</el-form-item>
<el-form-item label="货位分配数量" prop="allotQuantity">
<el-input v-model="form.allotQuantity" placeholder="请输入货位分配数量" />
<el-form-item label="品号" prop="productId">
<el-input v-model="form.productId" placeholder="请输入品号" />
</el-form-item>
<el-form-item label="备注546" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注546" />
<el-form-item label="产品分类" prop="parentId">
<el-input v-model="form.parentId" placeholder="请输入产品分类" />
</el-form-item>
<el-form-item label="计量单位546" prop="unit">
<el-input v-model="form.unit" placeholder="请输入计量单位546" />
<el-form-item label="品号描述" prop="price">
<el-input v-model="form.price" placeholder="请输入品号描述" />
</el-form-item>
<el-form-item label="规格型号546" prop="spec">
<el-input v-model="form.spec" placeholder="请输入规格型号546" />
<el-form-item label="英文描述" prop="cargoNo">
<el-input v-model="form.cargoNo" placeholder="请输入英文描述" />
</el-form-item>
<el-form-item label="546品名" prop="productName">
<el-input v-model="form.productName" placeholder="请输入546品名" />
<el-form-item label="图号" prop="unit">
<el-input v-model="form.unit" placeholder="请输入图号" />
</el-form-item>
<el-form-item label="层级关系546" prop="cjgx">
<el-input v-model="form.cjgx" placeholder="请输入层级关系546" />
<el-form-item label="规格" prop="spec">
<el-input v-model="form.spec" placeholder="请输入规格" />
</el-form-item>
<el-form-item label="上层物料546" prop="scwl">
<el-input v-model="form.scwl" placeholder="请输入上层物料546" />
<el-form-item label="描述" prop="remark">
<el-input v-model="form.remark" placeholder="请输入描述" />
</el-form-item>
<el-form-item label="顶层物料546" prop="dcwl">
<el-input v-model="form.dcwl" placeholder="请输入顶层物料546" />
<el-form-item label="型号" prop="spare1">
<el-input v-model="form.spare1" placeholder="请输入型号" />
</el-form-item>
<el-form-item label="货位,托盘加数量按逗号分开546" prop="spare9">
<el-input v-model="form.spare9" placeholder="请输入货位,托盘加数量按逗号分开546" />
<el-form-item label="单件净重" prop="spare2">
<el-input v-model="form.spare2" placeholder="请输入单件净重" />
</el-form-item>
<el-form-item label="颜色" prop="spare3">
<el-input v-model="form.spare3" placeholder="请输入颜色" />
</el-form-item>
<el-form-item label="序列号" prop="spare4">
<el-input v-model="form.spare4" placeholder="请输入序列号" />
</el-form-item>
<el-form-item label="电压" prop="spare5">
<el-input v-model="form.spare5" placeholder="请输入电压" />
</el-form-item>
<el-form-item label="功率" prop="spare6">
<el-input v-model="form.spare6" placeholder="请输入功率" />
</el-form-item>
<el-form-item label="品名" prop="productName">
<el-input v-model="form.productName" placeholder="请输入品名" />
</el-form-item>
<el-form-item label="相位" prop="spare7">
<el-input v-model="form.spare7" placeholder="请输入相位" />
</el-form-item>
<el-form-item label="毛重" prop="spare8">
<el-input v-model="form.spare8" placeholder="请输入毛重" />
</el-form-item>
<el-form-item label="NC号" prop="spare9">
<el-input v-model="form.spare9" placeholder="请输入NC号" />
</el-form-item>
<el-form-item label="电源线" prop="spare10">
<el-input v-model="form.spare10" placeholder="请输入电源线" />
</el-form-item>
<el-form-item label="插头" prop="spare11">
<el-input v-model="form.spare11" placeholder="请输入插头" />
</el-form-item>
<el-form-item label="接嘴" prop="spare12">
<el-input v-model="form.spare12" placeholder="请输入接嘴" />
</el-form-item>
<el-form-item label="快捷码" prop="spare13">
<el-input v-model="form.spare13" placeholder="请输入快捷码" />
</el-form-item>
<el-form-item label="库存单位编号" prop="spare14">
<el-input v-model="form.spare14" placeholder="请输入库存单位编号" />
</el-form-item>
<el-form-item label="库存单位名称" prop="spare15">
<el-input v-model="form.spare15" placeholder="请输入库存单位名称" />
</el-form-item>
<el-form-item label="品号群组" prop="spare16">
<el-input v-model="form.spare16" placeholder="请输入品号群组" />
</el-form-item>
<el-form-item label="归类品" prop="spare17">
<el-input v-model="form.spare17" placeholder="请输入归类品" />
</el-form-item>
<el-form-item label="计量体系" prop="spare18">
<el-input v-model="form.spare18" placeholder="请输入计量体系" />
</el-form-item>
<el-form-item label="群组名称" prop="spare19">
<el-input v-model="form.spare19" placeholder="请输入群组名称" />
</el-form-item>
<el-form-item label="批号管理" prop="spare20">
<el-input v-model="form.spare20" placeholder="请输入批号管理" />
</el-form-item>
<el-form-item label="状态" prop="spare21">
<el-input v-model="form.spare21" placeholder="请输入状态" />
</el-form-item>
<el-form-item label="产品大类" prop="spare22">
<el-input v-model="form.spare22" placeholder="请输入产品大类" />
</el-form-item>
<el-form-item label="产品二类" prop="spare23">
<el-input v-model="form.spare23" placeholder="请输入产品二类" />
</el-form-item>
<el-form-item label="产品线/产品系列" prop="spare24">
<el-input v-model="form.spare24" placeholder="请输入产品线/产品系列" />
</el-form-item>
<el-form-item label="BOM状态" prop="spare25">
<el-input v-model="form.spare25" placeholder="请输入BOM状态" />
</el-form-item>
<el-form-item label="产品定位" prop="spare26">
<el-input v-model="form.spare26" placeholder="请输入产品定位" />
</el-form-item>
<el-form-item label="电脑板型号" prop="spare27">
<el-input v-model="form.spare27" placeholder="请输入电脑板型号" />
</el-form-item>
<el-form-item label="非标要求" prop="spare28">
<el-input v-model="form.spare28" placeholder="请输入非标要求" />
</el-form-item>
<el-form-item label="品牌" prop="spare29">
<el-input v-model="form.spare29" placeholder="请输入品牌" />
</el-form-item>
<el-form-item label="非标颜色" prop="spare30">
<el-input v-model="form.spare30" placeholder="请输入非标颜色" />
</el-form-item>
<el-form-item label="主颜色" prop="spare31">
<el-input v-model="form.spare31" placeholder="请输入主颜色" />
</el-form-item>
<el-form-item label="辅助颜色" prop="spare32">
<el-input v-model="form.spare32" placeholder="请输入辅助颜色" />
</el-form-item>
<el-form-item label="是否标准款" prop="spare33">
<el-input v-model="form.spare33" placeholder="请输入是否标准款" />
</el-form-item>
<el-form-item label="包装方式" prop="spare34">
<el-input v-model="form.spare34" placeholder="请输入包装方式" />
</el-form-item>
<el-form-item label="主要包装方式" prop="spare35">
<el-input v-model="form.spare35" placeholder="请输入主要包装方式" />
</el-form-item>
<el-form-item label="长" prop="spare36">
<el-input v-model="form.spare36" placeholder="请输入长" />
</el-form-item>
<el-form-item label="宽" prop="spare37">
<el-input v-model="form.spare37" placeholder="请输入宽" />
</el-form-item>
<el-form-item label="高" prop="spare38">
<el-input v-model="form.spare38" placeholder="请输入高" />
</el-form-item>
<el-form-item label="包装材积" prop="spare39">
<el-input v-model="form.spare39" placeholder="请输入包装材积" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@@ -518,58 +479,91 @@ export default {
queryParams: {
pageNum: 1,
pageSize: 10,
stockoutGuid: null,
stockoutId: null,
outType: null,
createDate: null,
departmentNo: null,
customerNo: null,
createManId: null,
status: null,
stockoutSource: null,
warehouseId: null,
classNowId: null,
exitId: null,
warehouseId: null,
stockoutDetailId: null,
lotNo: null,
quantity: null,
allotQuantity: null,
assignNum: null,
erpStockoutId: null,
entryid: null,
customerName: null,
productGuid: null,
productId: null,
parentId: null,
price: null,
cargoNo: null,
unit: null,
spec: null,
remark: null,
spare1: null,
spare2: null,
spare3: null,
spare4: null,
spare5: null,
stockoutDetailId: null,
lotNo: null,
productId: null,
quantity: null,
assignNum: null,
allotQuantity: null,
unit: null,
spec: null,
spare6: null,
productName: null,
cjgx: null,
scwl: null,
dcwl: null,
spare9: null
spare7: null,
spare8: null,
spare9: null,
spare10: null,
spare11: null,
spare12: null,
spare13: null,
spare14: null,
spare15: null,
spare16: null,
spare17: null,
spare18: null,
spare19: null,
spare20: null,
spare21: null,
spare22: null,
spare23: null,
spare24: null,
spare25: null,
spare26: null,
spare27: null,
spare28: null,
spare29: null,
spare30: null,
spare31: null,
spare32: null,
spare33: null,
spare34: null,
spare35: null,
spare36: null,
spare37: null,
spare38: null,
spare39: null,
startTime: null,
finishTime: null
},
// 表单参数
form: {},
// 表单校验
rules: {
stockoutGuid: [
{ required: true, message: "546 guid不能为空", trigger: "blur" }
],
stockoutId: [
{ required: true, message: "546 单据编码不能为空", trigger: "blur" }
{ required: true, message: "出库单号不能为空", trigger: "blur" }
],
outType: [
{ required: true, message: "546 出库类型不能为空", trigger: "change" }
{ required: true, message: "出库类型不能为空", trigger: "change" }
],
createDate: [
{ required: true, message: "546 单据时间不能为空", trigger: "blur" }
{ required: true, message: "创建日期不能为空", trigger: "blur" }
],
status: [
{ required: true, message: "546 单据状态不能为空", trigger: "change" }
{ required: true, message: "出库状态不能为空", trigger: "change" }
],
stockoutDetailId: [
{ required: true, message: "546 子单不能为空", trigger: "blur" }
{ required: true, message: "出库明细ID不能为空", trigger: "blur" }
],
}
}
@@ -595,37 +589,70 @@ export default {
// 表单重置
reset() {
this.form = {
stockoutGuid: null,
stockoutId: null,
outType: null,
createDate: null,
departmentNo: null,
customerNo: null,
createManId: null,
status: null,
stockoutSource: null,
warehouseId: null,
classNowId: null,
exitId: null,
warehouseId: null,
stockoutDetailId: null,
lotNo: null,
quantity: null,
allotQuantity: null,
assignNum: null,
erpStockoutId: null,
entryid: null,
customerName: null,
productGuid: null,
productId: null,
parentId: null,
price: null,
cargoNo: null,
unit: null,
spec: null,
remark: null,
spare1: null,
spare2: null,
spare3: null,
spare4: null,
spare5: null,
stockoutDetailId: null,
lotNo: null,
productId: null,
quantity: null,
assignNum: null,
allotQuantity: null,
remark: null,
unit: null,
spec: null,
spare6: null,
productName: null,
cjgx: null,
scwl: null,
dcwl: null,
spare9: null
spare7: null,
spare8: null,
spare9: null,
spare10: null,
spare11: null,
spare12: null,
spare13: null,
spare14: null,
spare15: null,
spare16: null,
spare17: null,
spare18: null,
spare19: null,
spare20: null,
spare21: null,
spare22: null,
spare23: null,
spare24: null,
spare25: null,
spare26: null,
spare27: null,
spare28: null,
spare29: null,
spare30: null,
spare31: null,
spare32: null,
spare33: null,
spare34: null,
spare35: null,
spare36: null,
spare37: null,
spare38: null,
spare39: null
}
this.resetForm("form")
},
@@ -641,7 +668,7 @@ export default {
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.stockoutGuid)
this.ids = selection.map(item => item.stockoutId)
this.single = selection.length!==1
this.multiple = !selection.length
},
@@ -654,8 +681,8 @@ export default {
/** 修改按钮操作 */
handleUpdate(row) {
this.reset()
const stockoutGuid = row.stockoutGuid || this.ids
getViewStockoutHistory(stockoutGuid).then(response => {
const stockoutId = row.stockoutId || this.ids
getViewStockoutHistory(stockoutId).then(response => {
this.form = response.data
this.open = true
this.title = "修改出库单据历史"
@@ -665,7 +692,7 @@ export default {
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.stockoutGuid != null) {
if (this.form.stockoutId != null) {
updateViewStockoutHistory(this.form).then(response => {
this.$modal.msgSuccess("修改成功")
this.open = false
@@ -683,9 +710,9 @@ export default {
},
/** 删除按钮操作 */
handleDelete(row) {
const stockoutGuids = row.stockoutGuid || this.ids
this.$modal.confirm('是否确认删除出库单据历史编号为"' + stockoutGuids + '"的数据项?').then(function() {
return delViewStockoutHistory(stockoutGuids)
const stockoutIds = row.stockoutId || this.ids
this.$modal.confirm('是否确认删除出库单据历史编号为"' + stockoutIds + '"的数据项?').then(function() {
return delViewStockoutHistory(stockoutIds)
}).then(() => {
this.getList()
this.$modal.msgSuccess("删除成功")

View File

@@ -46,10 +46,10 @@
</el-form-item>-->
<el-form-item label="品名" prop="productName"><!-- 品名 -->
<el-form-item label="存货名称" prop="productName"><!-- 存货名称 -->
<el-input
v-model="queryParams.productName"
placeholder="请输入品名"
placeholder="请输入存货名称"
clearable
@keyup.enter.native="handleQuery"
/>
@@ -107,10 +107,10 @@
<dict-tag :options="dict.type.stock_status" :value="scope.row.stockStatus"/>
</template>
</el-table-column>
<el-table-column label="品号" align="center" prop="productId" />
<el-table-column label="品名" align="center" prop="productName" width="160"/>
<el-table-column label="批次号" align="center" prop="lotNo" sortable width="160"/>
<el-table-column label="订单号" align="center" prop="orderId" width="160" sortable/>
<el-table-column label="存货编码" align="center" prop="productId" />
<el-table-column label="存货名称" align="center" prop="productName" width="160"/>
<el-table-column label="批次号" align="center" prop="lotNo" width="160"/>
<!-- <el-table-column label="订单号" align="center" prop="orderId" width="160" sortable/>-->
<el-table-column label="入库时间" align="center" prop="inDate" width="160" sortable/>
<el-table-column label="数量" align="center" prop="quantity" sortable/>
<el-table-column label="作业编码" align="center" prop="jobId" width="160" sortable/>
@@ -119,18 +119,16 @@
<el-table-column label="入库单号" align="center" prop="stockinId" width="160" sortable/>
<!-- <el-table-column label="入库类型" align="center" prop="inType" />-->
<!-- <el-table-column label="仓库编码" align="center" prop="warehouseId" />-->
<el-table-column label="规格" align="center" prop="spare1" />
<el-table-column label="单位" align="center" prop="spare3" />
<el-table-column label="型号" align="center" prop="spare4" />
<el-table-column label="颜色" align="center" prop="spare5" />
<el-table-column label="序列号" align="center" prop="spare6" />
<el-table-column label="电压" align="center" prop="voltage" />
<el-table-column label="功率" align="center" prop="power" />
<el-table-column label="相位" align="center" prop="phase" />
<el-table-column label="净重" align="center" prop="netWeight" />
<el-table-column label="毛重" align="center" prop="grossWeight" />
<el-table-column label="分销" align="center" prop="distribution" />
<el-table-column label="机型" align="center" prop="model" />
<el-table-column label="层级关系" align="center" prop="spare1" />
<el-table-column label="层级关系" align="center" prop="spare2" />
<el-table-column label="顶层物料" align="center" prop="spare3" />
<el-table-column label="项目号" align="center" prop="spare4" />
<el-table-column label="合同号" align="center" prop="spare5" />
<el-table-column label="销售订单" align="center" prop="spare6" />
<el-table-column label="供应商编码" align="center" prop="voltage" />
<el-table-column label="规格型号" align="center" prop="power" />
<el-table-column label="计量单位" align="center" prop="phase" />
<!-- <el-table-column label="净重" align="center" prop="netWeight" />-->
<el-table-column width=120 label="操作" align="center" class-name="small-padding fixed-width"> <!-- 操作 -->
<template slot-scope="scope">
<el-button

View File

@@ -1,66 +1,58 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="品号" prop="productId"><!-- 品名 -->
<el-form-item label="存货编码" prop="productId"><!-- 品名 -->
<el-input
v-model="queryParams.productId"
placeholder="请输入品号"
placeholder="请输入存货编码"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="订单号" prop="序列号"><!-- 库存id -->
<el-form-item label="存货名称" prop="productName"><!-- 品名 -->
<el-input
v-model="queryParams.序列号"
placeholder="请输入订单号"
v-model="queryParams.productName"
placeholder="请输入存货名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="序列号" prop="spare6"><!-- 库存id -->
<el-form-item label="项目号" prop="spare4"><!-- 品名 -->
<el-input
v-model="queryParams.spare6"
placeholder="请输入序列号"
v-model="queryParams.spare4"
placeholder="请输入项目号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="批次" prop="lotNo"><!-- 库存id -->
<el-form-item label="合同号" prop="spare5"><!-- 品名 -->
<el-input
v-model="queryParams.lotNo"
placeholder="请输入批次"
v-model="queryParams.spare5"
placeholder="请输入合同号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="巷道" prop="roadwayId"><!-- 货位id -->
<el-form-item label="层级关系" prop="spare1"><!-- 品名 -->
<el-input
v-model="queryParams.roadwayId"
placeholder="请输入巷道"
v-model="queryParams.spare1"
placeholder="请输入层级关系"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="货位-排" prop="thePlatoon"><!-- 货位id -->
<el-form-item label="上层物料" prop="spare2"><!-- 品名 -->
<el-input
v-model="queryParams.thePlatoon"
placeholder="请输入货位-排"
v-model="queryParams.spare2"
placeholder="请输入上层物料"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="货位-列" prop="theColumn"><!-- 货位id -->
<el-form-item label="顶层物料" prop="spare3"><!-- 品名 -->
<el-input
v-model="queryParams.theColumn"
placeholder="请输入货位-列"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="货位-层" prop="theFloor"><!-- 货位id -->
<el-input
v-model="queryParams.theFloor"
placeholder="请输入货位-层"
v-model="queryParams.spare3"
placeholder="请输入顶层物料"
clearable
@keyup.enter.native="handleQuery"
/>
@@ -88,27 +80,23 @@
<el-table v-loading="loading" :data="managementList" @selection-change="handleSelectionChange" max-height="650">
<el-table-column type="selection" width="55" align="center"/>
<el-table-column label="库存编码" align="center" prop="stockId" width="120"/>
<el-table-column label="巷道" align="center" prop="roadwayId" sortable/>
<el-table-column label="货位名称" align="center" prop="cargoSpaceName" width="120"/>
<el-table-column label="入库日期" align="center" prop="inDate" width="160" sortable/>
<el-table-column label="入库日期" align="center" prop="inDate" width="160" />
<el-table-column label="批次号" align="center" prop="lotNo"/>
<el-table-column label="订单号" align="center" prop="orderId" width="160" sortable/>
<el-table-column label="序列号" align="center" prop="trayCode" width="130" sortable/>
<el-table-column label="品号" align="center" prop="productId" sortable/>
<el-table-column label="品名" align="center" prop="productName"/>
<el-table-column label="托盘条码" align="center" prop="trayCode" width="130" />
<el-table-column label="存货编码" align="center" prop="productId" />
<el-table-column label="存货名称" align="center" prop="productName"/>
<el-table-column label="层级关系" align="center" prop="spare1"/>
<el-table-column label="上层物料" align="center" prop="spare2"/>
<el-table-column label="顶层物料" align="center" prop="spare3"/>
<el-table-column label="项目号" align="center" prop="spare4"/>
<el-table-column label="合同号" align="center" prop="spare5"/>
<el-table-column label="销售订单" align="center" prop="spare6"/>
<el-table-column label="供应商编码" align="center" prop="voltage"/>
<el-table-column label="规格型号" align="center" prop="power"/>
<el-table-column label="计量单位" align="center" prop="phase"/>
<el-table-column label="数量" align="center" prop="quantity"/>
<el-table-column label="规格" align="center" prop="spare1"/>
<el-table-column label="单位" align="center" prop="spare3"/>
<el-table-column label="型号" align="center" prop="spare4"/>
<el-table-column label="颜色" align="center" prop="spare5"/>
<el-table-column label="序列号" align="center" prop="spare6"/>
<el-table-column label="电压" align="center" prop="voltage"/>
<el-table-column label="功率" align="center" prop="power"/>
<el-table-column label="相位" align="center" prop="phase"/>
<el-table-column label="净重" align="center" prop="netWeight"/>
<el-table-column label="毛重" align="center" prop="grossWeight"/>
<el-table-column label="分销" align="center" prop="distribution"/>
<el-table-column label="机型" align="center" prop="model"/>
</el-table>
@@ -174,7 +162,7 @@
</template>
<script>
import {listManagement, getManagement, delManagement, addManagement, updateManagement} from "@/api/stock/management"
import {addManagement, delManagement, getManagement, listManagement, updateManagement} from "@/api/stock/management"
import {listWarehouse} from "@/api/bas/warehouse"
import {pointOut} from "@/api/job/OutmydoJob"