出入库通知问题修改

jg-waiwang-pro
CJYXTX\27961 7 months ago
parent a405a0c4ad
commit 5e013cfc3a

@ -66,6 +66,8 @@
<result column="realNameA" property="realNameA"/>
<result column="productId" property="productId"/>
<result column="vehicle_number" property="vehicleNumber"/>
<result column="productName" property="productName"/>
</resultMap>
<select id="queryVoucherPopup" resultMap="voucherList">
SELECT
@ -262,4 +264,85 @@
</if>
</select>
<select id="queryVoucherNotification" resultMap="voucherList">
SELECT
a.*,
CASE
a.document_type
WHEN '1' THEN
'收货凭证'
WHEN '2' THEN
'发货凭证'
END AS documentType1,
CASE
a.voucher_type
WHEN '1' THEN
'磅单'
WHEN '2' THEN
'收据'
WHEN '3' THEN
'其他'
END AS voucherType1,
CASE
a.voucher_status
WHEN '1' THEN
'待校验'
WHEN '2' THEN
'待审核'
WHEN '3' THEN
'待核定'
WHEN '4' THEN
'待收货'
WHEN '5' THEN
'待发货'
WHEN '6' THEN
'已完成'
WHEN '7' THEN
'已驳回'
WHEN '8' THEN
'已关闭'
END AS voucherStatus1,
CASE
a.mode_transport
WHEN '1' THEN
'公路'
WHEN '2' THEN
'铁路'
WHEN '3' THEN
'轮船'
WHEN '4' THEN
'空运'
WHEN '5' THEN
'无'
END AS modeTransport1,
CASE
a.transportation_method
WHEN '1' THEN
'仓库承运(DC)'
WHEN '2' THEN
'承运商'
WHEN '3' THEN
'供应商'
WHEN '4' THEN
'自提'
END AS transportationMethod1,
c.spec AS spec,
b.unit AS unit,
b.gross_weight,
b.tare_weight,
b.buckle_weight,
b.net_weight,
c.name AS productName,
d.vehicle_number
FROM
jg_voucher a
LEFT JOIN jg_voucher_product b ON a.id=b.voucher_id
LEFT JOIN jg_product c ON b.product_id=c.id
LEFT JOIN jg_vehicle d ON b.voucher_id = d.id
LEFT JOIN flow_task e ON a.id = e.f_process_id
${ew.customSqlSegment} AND e.f_status = 2 AND a.id not in (SELECT voucher_id from jg_warehousing_storage_poundlist where f_delete_mark is null)
</select>
</mapper>

@ -17,6 +17,46 @@
<result column="notification_storage_number" property="notificationStorageNumber"></result>
</resultMap>
<resultMap id="warehousingNotificationMap" type="jnpf.entity.WarehousingNotificationEntity">
<id column="id" property="id"/>
<result column="warehousing_type" property="warehousingType"></result>
<result column="warehousing_status" property="warehousingStatus"></result>
<result column="warehousing_code" property="warehousingCode"></result>
<result column="order_source" property="orderSource"></result>
<result column="business_id" property="businessId"></result>
<result column="planned_warehousing_time_start" property="plannedWarehousingTimeStart"></result>
<result column="planned_warehousing_time_end" property="plannedWarehousingTimeEnd"></result>
<result column="subject_basic_id" property="subjectBasicId"></result>
<result column="shipping_address" property="shippingAddress"></result>
<result column="enterprise_id" property="enterpriseId"></result>
<result column="delivery_address" property="deliveryAddress"></result>
<result column="warehouse_id" property="warehouseId"></result>
<result column="plan_warehousing_num" property="planWarehousingNum"></result>
<result column="confirm_warehousing_num" property="confirmWarehousingNum"></result>
<result column="wait_warehousing_num" property="waitWarehousingNum"></result>
<result column="remark" property="remark"></result>
<result column="f_creator_time" property="creatorTime"></result>
<result column="f_creator_user_id" property="creatorUserId"></result>
<result column="f_last_modify_time" property="lastModifyTime"></result>
<result column="f_last_modify_user_id" property="lastModifyUserId"></result>
<result column="preparation_time" property="preparationTime"></result>
<result column="receivedQuantity" property="receivedQuantity"></result>
<result column="remainingStockableQuantity" property="remainingStockableQuantity"></result>
<result column="notificationStorageNumber" property="notificationStorageNumber"></result>
<result column="transactionMode" property="transactionMode"></result>
<result column="transportMode" property="transportMode"></result>
<result column="deliveryType" property="deliveryType"></result>
<result column="carriageMode" property="carriageMode"></result>
<result column="carrier" property="carrier"></result>
<result column="subjectBasicName" property="subjectBasicName"></result>
<result column="warehouseName" property="warehouseName"></result>
<result column="enterpriseName" property="enterpriseName"></result>
<result column="businessCode" property="businessCode"></result>
<result column="creatorUserName" property="creatorUserName"></result>
<result column="lastUserName" property="lastUserName"></result>
</resultMap>
<select id="queryNotificationNumList" resultType="jnpf.entity.WarehousingProductEntity">
SELECT
t1.warehousing_id,
@ -103,4 +143,54 @@
LEFT JOIN jg_warehousing_product b ON b.warehousing_id = a.id AND b.f_delete_mark IS NULL
WHERE a.business_id = #{id} and a.warehousing_type = #{warehousingType}
</select>
<select id="queryWarehousingNotificationList" resultMap="warehousingNotificationMap">
SELECT
a.* ,
b.name AS subjectBasicName,
c.name AS warehouseName,
d.f_full_name AS enterpriseName,
f.f_real_name AS creatorUserName,
g.f_real_name AS lastUserName
FROM
jg_warehousing_notification a
LEFT JOIN jg_subject_basic b ON a.subject_basic_id=b.id
LEFT JOIN jg_business_line c ON a.warehouse_id = c.id
LEFT JOIN base_organize d ON a.enterprise_id =d.f_id
LEFT JOIN base_user f ON a.f_creator_user_id = f.f_id
LEFT JOIN base_user g ON a.f_creator_user_id = g.f_id
${ew.customSqlSegment}
AND a.warehousing_type BETWEEN 1 AND 6
GROUP BY
a.id
<if test="warehousingNotificationPagination.sidx != null and warehousingNotificationPagination.sidx != ''">
ORDER BY ${warehousingNotificationPagination.sidx} ${warehousingNotificationPagination.sort}
</if>
</select>
<select id="queryWarehousingNotificationSaleList" resultMap="warehousingNotificationMap">
SELECT
a.* ,
b.name AS subjectBasicName,
c.name AS warehouseName,
d.f_full_name AS enterpriseName,
f.f_real_name AS creatorUserName,
g.f_real_name AS lastUserName
FROM
jg_warehousing_notification a
LEFT JOIN jg_subject_basic b ON a.subject_basic_id=b.id
LEFT JOIN jg_business_line c ON a.warehouse_id = c.id
LEFT JOIN base_organize d ON a.enterprise_id =d.f_id
LEFT JOIN base_user f ON a.f_creator_user_id = f.f_id
LEFT JOIN base_user g ON a.f_creator_user_id = g.f_id
${ew.customSqlSegment}
AND a.warehousing_type BETWEEN 7 AND 12
GROUP BY
a.id
<if test="warehousingNotificationPagination.sidx != null and warehousingNotificationPagination.sidx != ''">
ORDER BY ${warehousingNotificationPagination.sidx} ${warehousingNotificationPagination.sort}
</if>
</select>
</mapper>

@ -21,6 +21,10 @@ import java.util.List;
public interface VoucherMapper extends BaseMapper<VoucherEntity> {
IPage<VoucherEntity> queryVoucherPopup(@Param("page") Page<VoucherEntity> page,@Param("ew") QueryWrapper<VoucherEntity> voucherEntityQueryWrapper);
//入库通知查询凭证列表弹窗
IPage<VoucherEntity> queryVoucherNotification(@Param("page") Page<VoucherEntity> page,@Param("ew") QueryWrapper<VoucherEntity> voucherEntityQueryWrapper);
List<VoucherEntity> querySaleReceiptVoucher();
List<VoucherEntity> queryPurchaseReceiptVoucher();
List<VoucherEntity> queryPurchaseDeliveryVoucher();

@ -1,10 +1,14 @@
package jnpf.mapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import jnpf.entity.BusinessOrderEntity;
import jnpf.entity.WarehousingNotificationEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import jnpf.entity.WarehousingProductEntity;
import jnpf.model.warehousingnotification.WarehousingNotificationPagination;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -25,4 +29,12 @@ public interface WarehousingNotificationMapper extends BaseMapper<WarehousingNot
List<BusinessOrderEntity> queryOrderTypeList(String id);
//查询采购入库通知商品
List<WarehousingProductEntity> queryInBoundNotice(@Param("id") String id, @Param("warehousingType") String warehousingType);
//查询入库通知列表
IPage<WarehousingNotificationEntity> queryWarehousingNotificationList(@Param("page") Page<WarehousingNotificationEntity> page, @Param("warehousingNotificationPagination") WarehousingNotificationPagination warehousingNotificationPagination, @Param("ew") Wrapper<WarehousingNotificationEntity> warehousingNotificationWrapper);
//查询出库通知列表
IPage<WarehousingNotificationEntity> queryWarehousingNotificationSaleList(@Param("page") Page<WarehousingNotificationEntity> page, @Param("warehousingNotificationPagination") WarehousingNotificationPagination warehousingNotificationPagination, @Param("ew") Wrapper<WarehousingNotificationEntity> warehousingNotificationWrapper);
}

@ -45,7 +45,8 @@ public interface VoucherService extends IService<VoucherEntity> {
//质检单查询凭证列表弹窗
List<VoucherEntity> queryInspectionVoucherPopupInfo(VoucherPagination voucherPagination);
//入库通知查询凭证列表弹窗
List<VoucherEntity> queryNotificationVoucherPopupInfo(VoucherPagination voucherPagination);
//查询销售收货凭证
List<VoucherEntity> querySaleReceiptVoucherInfo();

@ -18,6 +18,10 @@ public interface WarehousingNotificationService extends IService<WarehousingNoti
List<WarehousingNotificationEntity> getTypeList(WarehousingNotificationPagination warehousingNotificationPagination,String dataType);
List<WarehousingNotificationEntity> getSaleList(WarehousingNotificationPagination warehousingNotificationPagination);
List<WarehousingNotificationEntity> getTypeSaleList(WarehousingNotificationPagination warehousingNotificationPagination,String dataType);
WarehousingNotificationEntity getInfo(String id);
void delete(WarehousingNotificationEntity entity);

@ -260,9 +260,7 @@ public class BomServiceImpl extends ServiceImpl<BomMapper, BomEntity> implements
if(ObjectUtil.isNotEmpty(bomPagination.getBomStatus())){
bomNum++;
// bomQueryWrapper.lambda().eq(BomEntity::getBomStatus,bomPagination.getBomStatus());
bomQueryWrapper.eq("t1.BOM_STATUS",bomPagination.getBomStatus());
}

@ -590,6 +590,19 @@ public class VoucherServiceImpl extends ServiceImpl<VoucherMapper, VoucherEntity
return voucherPagination.setData(voucherEntityIPage.getRecords(),voucherEntityIPage.getTotal());
}
@Override
public List<VoucherEntity> queryNotificationVoucherPopupInfo(VoucherPagination voucherPagination) {
QueryWrapper<VoucherEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("b.product_id",voucherPagination.getProductId());
queryWrapper.notIn(ObjectUtils.isNotEmpty(voucherPagination.getExcludeIdList()),"a.id",voucherPagination.getExcludeIdList());
queryWrapper.in(ObjectUtils.isNotEmpty(voucherPagination.getProductIdList()),"b.product_id",voucherPagination.getProductIdList());
queryWrapper.isNull("a.f_delete_mark");
Page<VoucherEntity> page=new Page<>(voucherPagination.getCurrentPage(), voucherPagination.getPageSize());
IPage<VoucherEntity> voucherEntityIPage = voucherMapper.queryVoucherNotification(page,queryWrapper);
return voucherPagination.setData(voucherEntityIPage.getRecords(),voucherEntityIPage.getTotal());
}
@Override
public List<VoucherEntity> querySaleReceiptVoucherInfo() {
return voucherMapper.querySaleReceiptVoucher();

@ -196,8 +196,8 @@ public class WarehousingNotificationServiceImpl extends ServiceImpl<WarehousingN
String value = warehousingNotificationPagination.getWarehousingCode() instanceof List ?
JsonUtil.getObjectToString(warehousingNotificationPagination.getWarehousingCode()) :
String.valueOf(warehousingNotificationPagination.getWarehousingCode());
warehousingNotificationQueryWrapper.lambda().like(WarehousingNotificationEntity::getWarehousingCode,value);
// warehousingNotificationQueryWrapper.lambda().like(WarehousingNotificationEntity::getWarehousingCode,value);
warehousingNotificationQueryWrapper.like("a.WAREHOUSING_CODE",value);
}
if(ObjectUtil.isNotEmpty(warehousingNotificationPagination.getWarehousingType())){
@ -206,7 +206,8 @@ public class WarehousingNotificationServiceImpl extends ServiceImpl<WarehousingN
String value = warehousingNotificationPagination.getWarehousingType() instanceof List ?
JsonUtil.getObjectToString(warehousingNotificationPagination.getWarehousingType()) :
String.valueOf(warehousingNotificationPagination.getWarehousingType());
warehousingNotificationQueryWrapper.lambda().like(WarehousingNotificationEntity::getWarehousingType,value);
// warehousingNotificationQueryWrapper.lambda().like(WarehousingNotificationEntity::getWarehousingType,value);
warehousingNotificationQueryWrapper.like("a.WAREHOUSING_TYTE",value);
}
@ -225,7 +226,8 @@ public class WarehousingNotificationServiceImpl extends ServiceImpl<WarehousingN
if (intersection.size()==0){
intersection.add("jnpfNullList");
}
warehousingNotificationQueryWrapper.lambda().in(WarehousingNotificationEntity::getId, intersection);
// warehousingNotificationQueryWrapper.lambda().in(WarehousingNotificationEntity::getId, intersection);
warehousingNotificationQueryWrapper.in("a.id", intersection);
}
//是否有高级查询
if (StringUtil.isNotEmpty(superOp)){
@ -233,7 +235,9 @@ public class WarehousingNotificationServiceImpl extends ServiceImpl<WarehousingN
allSuperIDlist.add("jnpfNullList");
}
List<String> finalAllSuperIDlist = allSuperIDlist;
warehousingNotificationQueryWrapper.lambda().and(t->t.in(WarehousingNotificationEntity::getId, finalAllSuperIDlist));
// warehousingNotificationQueryWrapper.lambda().and(t->t.in(WarehousingNotificationEntity::getId, finalAllSuperIDlist));
warehousingNotificationQueryWrapper.and(t->t.in("a.id",finalAllSuperIDlist));
}
//是否有数据过滤查询
if (StringUtil.isNotEmpty(ruleOp)){
@ -241,14 +245,253 @@ public class WarehousingNotificationServiceImpl extends ServiceImpl<WarehousingN
allRuleIDlist.add("jnpfNullList");
}
List<String> finalAllRuleIDlist = allRuleIDlist;
warehousingNotificationQueryWrapper.lambda().and(t->t.in(WarehousingNotificationEntity::getId, finalAllRuleIDlist));
// warehousingNotificationQueryWrapper.lambda().and(t->t.in(WarehousingNotificationEntity::getId, finalAllRuleIDlist));
warehousingNotificationQueryWrapper.and(t->t.in("a.id",finalAllRuleIDlist));
}
//假删除标志
// warehousingNotificationQueryWrapper.lambda().isNull(WarehousingNotificationEntity::getDeleteMark);
warehousingNotificationQueryWrapper.isNull("a.f_delete_mark");
//排序
if(StringUtil.isEmpty(warehousingNotificationPagination.getSidx())){
// warehousingNotificationQueryWrapper.lambda().orderByDesc(WarehousingNotificationEntity::getId);
warehousingNotificationPagination.setSidx("a.f_creator_time");
warehousingNotificationPagination.setSort("DESC");
}else{
try {
String sidx = warehousingNotificationPagination.getSidx();
String[] strs= sidx.split("_name");
WarehousingNotificationEntity warehousingNotificationEntity = new WarehousingNotificationEntity();
Field declaredField = warehousingNotificationEntity.getClass().getDeclaredField(strs[0]);
declaredField.setAccessible(true);
String value = declaredField.getAnnotation(TableField.class).value();
// warehousingNotificationQueryWrapper="asc".equals(warehousingNotificationPagination.getSort().toLowerCase())?warehousingNotificationQueryWrapper.orderByAsc(value):warehousingNotificationQueryWrapper.orderByDesc(value);
warehousingNotificationPagination.setSidx("a." + value);
} catch (NoSuchFieldException e) {
e.printStackTrace();
}
}
if("0".equals(dataType)){
if((total>0 && AllIdList.size()>0) || total==0){
Page<WarehousingNotificationEntity> page=new Page<>(warehousingNotificationPagination.getCurrentPage(), warehousingNotificationPagination.getPageSize());
warehousingNotificationQueryWrapper.inSql("a.id", "SELECT f_process_id FROM flow_task WHERE f_status = '2'");
// IPage<WarehousingNotificationEntity> userIPage=this.page(page, warehousingNotificationQueryWrapper);
IPage<WarehousingNotificationEntity> userIPage=warehousingNotificationMapper.queryWarehousingNotificationList(page,warehousingNotificationPagination,warehousingNotificationQueryWrapper);
return warehousingNotificationPagination.setData(userIPage.getRecords(),userIPage.getTotal());
}else{
List<WarehousingNotificationEntity> list = new ArrayList();
return warehousingNotificationPagination.setData(list, list.size());
}
}else{
return this.list(warehousingNotificationQueryWrapper);
}
}
@Override
public List<WarehousingNotificationEntity> getSaleList(WarehousingNotificationPagination warehousingNotificationPagination) {
return getTypeSaleList(warehousingNotificationPagination,warehousingNotificationPagination.getDataType());
}
@Override
public List<WarehousingNotificationEntity> getTypeSaleList(WarehousingNotificationPagination warehousingNotificationPagination, String dataType) {
String userId=userProvider.get().getUserId();
List<String> AllIdList =new ArrayList();
List<List<String>> intersectionList =new ArrayList<>();
boolean isPc = ServletUtil.getHeader("jnpf-origin").equals("pc");
String columnData = !isPc ? WarehousingNotificationConstant.getAppColumnData() : WarehousingNotificationConstant.getColumnData();
ColumnDataModel columnDataModel = JsonUtil.getJsonToBean(columnData, ColumnDataModel.class);
String ruleJson = !isPc ? JsonUtil.getObjectToString(columnDataModel.getRuleListApp()) : JsonUtil.getObjectToString(columnDataModel.getRuleList());
int total=0;
int warehousingNotificationNum =0;
QueryWrapper<WarehousingNotificationEntity> warehousingNotificationQueryWrapper=new QueryWrapper<>();
int warehousingProductNum =0;
QueryWrapper<WarehousingProductEntity> warehousingProductQueryWrapper=new QueryWrapper<>();
long warehousingProductcount = warehousingProductService.count();
List<String> allSuperIDlist = new ArrayList<>();
String superOp ="";
if (ObjectUtil.isNotEmpty(warehousingNotificationPagination.getSuperQueryJson())){
List<String> allSuperList = new ArrayList<>();
List<List<String>> intersectionSuperList = new ArrayList<>();
String queryJson = warehousingNotificationPagination.getSuperQueryJson();
SuperJsonModel superJsonModel = JsonUtil.getJsonToBean(queryJson, SuperJsonModel.class);
int superNum = 0;
QueryWrapper<WarehousingNotificationEntity> warehousingNotificationSuperWrapper = new QueryWrapper<>();
warehousingNotificationSuperWrapper = generaterSwapUtil.getCondition(new QueryModel(warehousingNotificationSuperWrapper,WarehousingNotificationEntity.class,queryJson,"0"));
int warehousingNotificationNum1 = warehousingNotificationSuperWrapper.getExpression().getNormal().size();
if (warehousingNotificationNum1>0){
List<String> warehousingNotificationList =this.list(warehousingNotificationSuperWrapper).stream().map(WarehousingNotificationEntity::getId).collect(Collectors.toList());
allSuperList.addAll(warehousingNotificationList);
intersectionSuperList.add(warehousingNotificationList);
superNum++;
}
String warehousingProductTable = "jg_warehousing_product";
boolean warehousingProductHasSql = queryJson.contains(warehousingProductTable);
List<String> warehousingProductList = generaterSwapUtil.selectIdsByChildCondition(WarehousingNotificationConstant.getTableList(), warehousingProductTable , queryJson, null);
if (warehousingProductHasSql){
allSuperList.addAll(warehousingProductList);
intersectionSuperList.add(warehousingProductList);
superNum++;
}
superOp = superNum > 0 ? superJsonModel.getMatchLogic() : "";
//and or
if(superOp.equalsIgnoreCase("and")){
allSuperIDlist = generaterSwapUtil.getIntersection(intersectionSuperList);
}else{
allSuperIDlist = allSuperList;
}
}
List<String> allRuleIDlist = new ArrayList<>();
String ruleOp ="";
if (ObjectUtil.isNotEmpty(ruleJson)){
List<String> allRuleList = new ArrayList<>();
List<List<String>> intersectionRuleList = new ArrayList<>();
SuperJsonModel ruleJsonModel = JsonUtil.getJsonToBean(ruleJson, SuperJsonModel.class);
int ruleNum = 0;
QueryWrapper<WarehousingNotificationEntity> warehousingNotificationSuperWrapper = new QueryWrapper<>();
warehousingNotificationSuperWrapper = generaterSwapUtil.getCondition(new QueryModel(warehousingNotificationSuperWrapper,WarehousingNotificationEntity.class,ruleJson,"0"));
int warehousingNotificationNum1 = warehousingNotificationSuperWrapper.getExpression().getNormal().size();
if (warehousingNotificationNum1>0){
List<String> warehousingNotificationList =this.list(warehousingNotificationSuperWrapper).stream().map(WarehousingNotificationEntity::getId).collect(Collectors.toList());
allRuleList.addAll(warehousingNotificationList);
intersectionRuleList.add(warehousingNotificationList);
ruleNum++;
}
String warehousingProductTable = "jg_warehousing_product";
boolean warehousingProductHasSql = ruleJson.contains(warehousingProductTable);
List<String> warehousingProductList = generaterSwapUtil.selectIdsByChildCondition(WarehousingNotificationConstant.getTableList(), warehousingProductTable , ruleJson, null);
if (warehousingProductHasSql){
allRuleList.addAll(warehousingProductList);
intersectionRuleList.add(warehousingProductList);
ruleNum++;
}
ruleOp = ruleNum > 0 ? ruleJsonModel.getMatchLogic() : "";
//and or
if(ruleOp.equalsIgnoreCase("and")){
allRuleIDlist = generaterSwapUtil.getIntersection(intersectionRuleList);
}else{
allRuleIDlist = allRuleList;
}
}
boolean pcPermission = true;
boolean appPermission = false;
if(isPc && pcPermission){
if (!userProvider.get().getIsAdministrator()){
Object warehousingNotificationObj=generaterSwapUtil.getAuthorizeCondition(new QueryModel(warehousingNotificationQueryWrapper,WarehousingNotificationEntity.class,warehousingNotificationPagination.getMenuId(),"0"));
if (ObjectUtil.isEmpty(warehousingNotificationObj)){
return new ArrayList<>();
} else {
warehousingNotificationQueryWrapper = (QueryWrapper<WarehousingNotificationEntity>)warehousingNotificationObj;
if( warehousingNotificationQueryWrapper.getExpression().getNormal().size()>0){
warehousingNotificationNum++;
}
}
Object warehousingProductObj=generaterSwapUtil.getAuthorizeCondition(new QueryModel(warehousingProductQueryWrapper,WarehousingProductEntity.class,warehousingNotificationPagination.getMenuId(),"0"));
if (ObjectUtil.isEmpty(warehousingProductObj)){
return new ArrayList<>();
} else {
warehousingProductQueryWrapper = (QueryWrapper<WarehousingProductEntity>)warehousingProductObj;
if( warehousingProductQueryWrapper.getExpression().getNormal().size()>0){
warehousingProductNum++;
}
}
}
}
if(!isPc && appPermission){
if (!userProvider.get().getIsAdministrator()){
Object warehousingNotificationObj=generaterSwapUtil.getAuthorizeCondition(new QueryModel(warehousingNotificationQueryWrapper,WarehousingNotificationEntity.class,warehousingNotificationPagination.getMenuId(),"0"));
if (ObjectUtil.isEmpty(warehousingNotificationObj)){
return new ArrayList<>();
} else {
warehousingNotificationQueryWrapper = (QueryWrapper<WarehousingNotificationEntity>)warehousingNotificationObj;
if( warehousingNotificationQueryWrapper.getExpression().getNormal().size()>0){
warehousingNotificationNum++;
}
}
Object warehousingProductObj=generaterSwapUtil.getAuthorizeCondition(new QueryModel(warehousingProductQueryWrapper,WarehousingProductEntity.class,warehousingNotificationPagination.getMenuId(),"0"));
if (ObjectUtil.isEmpty(warehousingProductObj)){
return new ArrayList<>();
} else {
warehousingProductQueryWrapper = (QueryWrapper<WarehousingProductEntity>)warehousingProductObj;
if( warehousingProductQueryWrapper.getExpression().getNormal().size()>0){
warehousingProductNum++;
}
}
}
}
if(isPc){
if(ObjectUtil.isNotEmpty(warehousingNotificationPagination.getWarehousingCode())){
warehousingNotificationNum++;
String value = warehousingNotificationPagination.getWarehousingCode() instanceof List ?
JsonUtil.getObjectToString(warehousingNotificationPagination.getWarehousingCode()) :
String.valueOf(warehousingNotificationPagination.getWarehousingCode());
// warehousingNotificationQueryWrapper.lambda().like(WarehousingNotificationEntity::getWarehousingCode,value);
warehousingNotificationQueryWrapper.like("a.WAREHOUSING_CODE",value);
}
if(ObjectUtil.isNotEmpty(warehousingNotificationPagination.getWarehousingType())){
warehousingNotificationNum++;
String value = warehousingNotificationPagination.getWarehousingType() instanceof List ?
JsonUtil.getObjectToString(warehousingNotificationPagination.getWarehousingType()) :
String.valueOf(warehousingNotificationPagination.getWarehousingType());
// warehousingNotificationQueryWrapper.lambda().like(WarehousingNotificationEntity::getWarehousingType,value);
warehousingNotificationQueryWrapper.like("a.WAREHOUSING_TYTE",value);
}
}
if(warehousingProductNum>0){
List<String> warehousingProductIdList = warehousingProductService.list(warehousingProductQueryWrapper).stream().filter(t->StringUtil.isNotEmpty(t.getWarehousingId())).map(t->t.getWarehousingId()).collect(Collectors.toList());
long count = warehousingProductService.count();
if (count>0){
intersectionList.add(warehousingProductIdList);
}
AllIdList.addAll(warehousingProductIdList);
}
total+=warehousingProductNum;
List<String> intersection = generaterSwapUtil.getIntersection(intersectionList);
if (total>0){
if (intersection.size()==0){
intersection.add("jnpfNullList");
}
// warehousingNotificationQueryWrapper.lambda().in(WarehousingNotificationEntity::getId, intersection);
warehousingNotificationQueryWrapper.in("a.id", intersection);
}
//是否有高级查询
if (StringUtil.isNotEmpty(superOp)){
if (allSuperIDlist.size()==0){
allSuperIDlist.add("jnpfNullList");
}
List<String> finalAllSuperIDlist = allSuperIDlist;
// warehousingNotificationQueryWrapper.lambda().and(t->t.in(WarehousingNotificationEntity::getId, finalAllSuperIDlist));
warehousingNotificationQueryWrapper.and(t->t.in("a.id",finalAllSuperIDlist));
}
//是否有数据过滤查询
if (StringUtil.isNotEmpty(ruleOp)){
if (allRuleIDlist.size()==0){
allRuleIDlist.add("jnpfNullList");
}
List<String> finalAllRuleIDlist = allRuleIDlist;
// warehousingNotificationQueryWrapper.lambda().and(t->t.in(WarehousingNotificationEntity::getId, finalAllRuleIDlist));
warehousingNotificationQueryWrapper.and(t->t.in("a.id",finalAllRuleIDlist));
}
//假删除标志
warehousingNotificationQueryWrapper.lambda().isNull(WarehousingNotificationEntity::getDeleteMark);
// warehousingNotificationQueryWrapper.lambda().isNull(WarehousingNotificationEntity::getDeleteMark);
warehousingNotificationQueryWrapper.isNull("a.f_delete_mark");
//排序
if(StringUtil.isEmpty(warehousingNotificationPagination.getSidx())){
warehousingNotificationQueryWrapper.lambda().orderByDesc(WarehousingNotificationEntity::getId);
// warehousingNotificationQueryWrapper.lambda().orderByDesc(WarehousingNotificationEntity::getId);
warehousingNotificationPagination.setSidx("a.f_creator_time");
warehousingNotificationPagination.setSort("DESC");
}else{
try {
String sidx = warehousingNotificationPagination.getSidx();
@ -257,7 +500,8 @@ public class WarehousingNotificationServiceImpl extends ServiceImpl<WarehousingN
Field declaredField = warehousingNotificationEntity.getClass().getDeclaredField(strs[0]);
declaredField.setAccessible(true);
String value = declaredField.getAnnotation(TableField.class).value();
warehousingNotificationQueryWrapper="asc".equals(warehousingNotificationPagination.getSort().toLowerCase())?warehousingNotificationQueryWrapper.orderByAsc(value):warehousingNotificationQueryWrapper.orderByDesc(value);
// warehousingNotificationQueryWrapper="asc".equals(warehousingNotificationPagination.getSort().toLowerCase())?warehousingNotificationQueryWrapper.orderByAsc(value):warehousingNotificationQueryWrapper.orderByDesc(value);
warehousingNotificationPagination.setSidx("a." + value);
} catch (NoSuchFieldException e) {
e.printStackTrace();
}
@ -266,8 +510,9 @@ public class WarehousingNotificationServiceImpl extends ServiceImpl<WarehousingN
if("0".equals(dataType)){
if((total>0 && AllIdList.size()>0) || total==0){
Page<WarehousingNotificationEntity> page=new Page<>(warehousingNotificationPagination.getCurrentPage(), warehousingNotificationPagination.getPageSize());
warehousingNotificationQueryWrapper.inSql("id", "SELECT f_process_id FROM flow_task WHERE f_status = '2'");
IPage<WarehousingNotificationEntity> userIPage=this.page(page, warehousingNotificationQueryWrapper);
warehousingNotificationQueryWrapper.inSql("a.id", "SELECT f_process_id FROM flow_task WHERE f_status = '2'");
// IPage<WarehousingNotificationEntity> userIPage=this.page(page, warehousingNotificationQueryWrapper);
IPage<WarehousingNotificationEntity> userIPage=warehousingNotificationMapper.queryWarehousingNotificationSaleList(page,warehousingNotificationPagination,warehousingNotificationQueryWrapper);
return warehousingNotificationPagination.setData(userIPage.getRecords(),userIPage.getTotal());
}else{
List<WarehousingNotificationEntity> list = new ArrayList();
@ -277,6 +522,7 @@ public class WarehousingNotificationServiceImpl extends ServiceImpl<WarehousingN
return this.list(warehousingNotificationQueryWrapper);
}
}
@Override
public WarehousingNotificationEntity getInfo(String id){
QueryWrapper<WarehousingNotificationEntity> queryWrapper=new QueryWrapper<>();

@ -7,6 +7,7 @@ import io.swagger.v3.oas.annotations.tags.Tag;
import jnpf.base.ActionResult;
import jnpf.base.UserInfo;
import jnpf.exception.DataException;
import jnpf.model.voucher.VoucherPagination;
import jnpf.permission.entity.UserEntity;
import jnpf.service.*;
import jnpf.entity.*;
@ -73,6 +74,10 @@ public class WarehousingNotificationController {
@Autowired
private WarehousingProductService warehousingProductService;
@Autowired
private BusinessOrderService businessOrderService;
@Autowired
private VoucherService voucherService;
@Autowired
@ -90,6 +95,23 @@ public class WarehousingNotificationController {
List<WarehousingNotificationEntity> list= warehousingNotificationService.getList(warehousingNotificationPagination);
List<Map<String, Object>> realList=new ArrayList<>();
for (WarehousingNotificationEntity entity : list) {
if (entity.getWarehousingType().equals("1")){
//采购入库
BusinessOrderEntity businessOrderEntity = businessOrderService.getInfo(entity.getBusinessId());
entity.setBusinessCode(businessOrderEntity.getCode());
}else if (entity.getWarehousingType().equals("2")){
//销售入库
BusinessOrderEntity businessOrderEntity = businessOrderService.getInfo(entity.getBusinessId());
entity.setBusinessCode(businessOrderEntity.getCode());
}else if (entity.getWarehousingType().equals("3")){
//调拨入库
}else if (entity.getWarehousingType().equals("4")){
//成品入库
}else if (entity.getWarehousingType().equals("5")){
//盘盈入库
}else if (entity.getWarehousingType().equals("6")){
//其他入库
}
List<WarehousingProductEntity> warehousingProductEntityList=warehousingNotificationService.getWarehousingProductList(entity.getId());
for (WarehousingProductEntity warehousingProductEntity:warehousingProductEntityList){
@ -105,6 +127,7 @@ public class WarehousingNotificationController {
entity.setCarrier(businessOrderEntity.getCarrier());
entity.setCarriageMode(businessOrderEntity.getCarriageMode());
}
Map<String, Object> warehousingNotificationMap=JsonUtil.entityToMap(entity);
warehousingNotificationMap.put("id", warehousingNotificationMap.get("id"));
//副表数据
@ -145,6 +168,7 @@ public class WarehousingNotificationController {
}
/**
*
*
@ -154,16 +178,42 @@ public class WarehousingNotificationController {
@Operation(summary = "获取列表")
@PostMapping("/getListSale")
public ActionResult listSale(@RequestBody WarehousingNotificationPagination warehousingNotificationPagination)throws IOException{
List<WarehousingNotificationEntity> list= warehousingNotificationService.getList(warehousingNotificationPagination);
List<WarehousingNotificationEntity> list= warehousingNotificationService.getSaleList(warehousingNotificationPagination);
List<Map<String, Object>> realList=new ArrayList<>();
for (WarehousingNotificationEntity entity : list) {
if (entity.getWarehousingType().equals("7")){
//采购出库
BusinessOrderEntity businessOrderEntity = businessOrderService.getInfo(entity.getBusinessId());
entity.setBusinessCode(businessOrderEntity.getCode());
}else if (entity.getWarehousingType().equals("8")){
//销售出库
BusinessOrderEntity businessOrderEntity = businessOrderService.getInfo(entity.getBusinessId());
entity.setBusinessCode(businessOrderEntity.getCode());
}else if (entity.getWarehousingType().equals("9")){
//调拨出库
}else if (entity.getWarehousingType().equals("10")){
//成品出库
}else if (entity.getWarehousingType().equals("11")){
//盘盈出库
}else if (entity.getWarehousingType().equals("12")){
//其他出库
}
List<WarehousingProductEntity> warehousingProductEntityList=warehousingNotificationService.getWarehousingProductList(entity.getId());
for (WarehousingProductEntity warehousingProductEntity:warehousingProductEntityList){
entity.setReceivedQuantity(warehousingProductEntity.getReceivedQuantity());
entity.setRemainingStockableQuantity(warehousingProductEntity.getRemainingStockableQuantity());
entity.setNotificationStorageNumber(warehousingProductEntity.getNotificationStorageNumber());
}
List<BusinessOrderEntity> businessOrderEntityList =warehousingNotificationService.queryBusinessOrderType(entity.getId());
for (BusinessOrderEntity businessOrderEntity:businessOrderEntityList){
entity.setTransactionMode(businessOrderEntity.getTransactionMode());
entity.setTransportMode(businessOrderEntity.getTransportMode());
entity.setDeliveryType(businessOrderEntity.getDeliveryType());
entity.setCarrier(businessOrderEntity.getCarrier());
entity.setCarriageMode(businessOrderEntity.getCarriageMode());
}
Map<String, Object> warehousingNotificationMap=JsonUtil.entityToMap(entity);
warehousingNotificationMap.put("id", warehousingNotificationMap.get("id"));
@ -174,7 +224,7 @@ public class WarehousingNotificationController {
realList.add(warehousingNotificationMap);
}
//数据转换
realList = generaterSwapUtil.swapDataList(realList, WarehousingNotificationConstant.getFormData(), WarehousingNotificationConstant.getColumnData(), warehousingNotificationPagination.getModuleId(),false);
// realList = generaterSwapUtil.swapDataList(realList, WarehousingNotificationConstant.getFormData(), WarehousingNotificationConstant.getColumnData(), warehousingNotificationPagination.getModuleId(),false);
//流程状态添加
for(Map<String, Object> vo:realList){
@ -547,4 +597,41 @@ public class WarehousingNotificationController {
return ActionResult.success(warehousingNotificationMap);
}
/**
* Notification
*
* @return
*/
@Operation(summary = "获取Notification选择的凭证和商品列表")
@PostMapping("/getNotificationVoucherProductList")
public ActionResult queryNotificationVoucherProductList(@RequestBody VoucherPagination voucherPagination) throws IOException{
// WarehousingNotificationEntity warehousingNotificationEntity= warehousingNotificationService.getInfo(voucherPagination.getId());
String id = voucherPagination.getNotid();
QueryWrapper<WarehousingProductEntity> warehousingProductEntityQueryWrapper=new QueryWrapper<>();
warehousingProductEntityQueryWrapper.lambda().eq(WarehousingProductEntity::getWarehousingId,id);
List<WarehousingProductEntity> warehousingProductEntityList = warehousingProductService.list(warehousingProductEntityQueryWrapper);
List<VoucherEntity> list=new ArrayList<>();
for (WarehousingProductEntity warehousingProductEntity:warehousingProductEntityList){
// QueryWrapper<VoucherEntity> voucherEntityQueryWrapper=new QueryWrapper<>();
// VoucherPagination voucherPagination =new VoucherPagination();
voucherPagination.setProductId(warehousingProductEntity.getProductId());
List<VoucherEntity> voucherList= voucherService.queryNotificationVoucherPopupInfo(voucherPagination);
list.addAll(voucherList);
}
// List<ProductWarehouseEntity> productWarehouseEntityList=workOrderService.getWorkBomProduct(voucherEntity.getId());
// voucherEntity.setProductWarehouseEntityList(productWarehouseEntityList);
//返回对象
PageListVO vo = new PageListVO();
vo.setList(list);
PaginationVO page = JsonUtil.getJsonToBean(voucherPagination, PaginationVO.class);
vo.setPagination(page);
return ActionResult.success(vo);
}
}

@ -718,9 +718,7 @@ public class WorkOrderController {
// }
// bomEntity.setProductWarehouseEntityList(productList);
bomEntity.setProductWarehouseEntityList(productWarehouseEntityList);
}
return ActionResult.success(workBomlist);
}
@ -754,7 +752,6 @@ public class WorkOrderController {
workOrderProductModel.setProportionNum(String.valueOf(bigworknums));
BigDecimal planNum = new BigDecimal(workOrderProductModel.getPlanNum());
BigDecimal planNum1 =planNum.subtract(retNums);
planNum = planNum.subtract(bigworknums);
int result = planNum.compareTo(zeros);
if (result>0){
@ -885,11 +882,7 @@ public class WorkOrderController {
if (retNum1.compareTo(zero1)>0){
warehousingReportlossController.createWork(id,warehousingReportlossForm);
}
}
}catch(Exception e){
return ActionResult.fail("修改数据失败");
}

@ -162,8 +162,6 @@ public class VoucherEntity {
@TableField(exist = false)
private String remark;
@TableField(exist = false)
private List<ProductWarehouseEntity> productWarehouseEntityList;
@TableField(exist = false)
private String documentType1;
@TableField(exist = false)
private String voucherType1;
@ -185,7 +183,10 @@ public class VoucherEntity {
private String realNameA;
@TableField(exist = false)
private String vehicleNumber;
@TableField(exist = false)
private String productName;
@TableField(exist = false)
private List<ProductWarehouseEntity> productWarehouseEntityList;
@TableField(exist = false)
private List<WarehousingInspectionConclusionEntity> warehousingInspectionConclusionModelList;

@ -5,6 +5,8 @@ import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
*
*
@ -111,4 +113,23 @@ public class WarehousingNotificationEntity {
private String carriageMode;
@TableField(exist = false)
private String carrier;
@TableField(exist = false)
private String subjectBasicName;
@TableField(exist = false)
private String warehouseName;
@TableField(exist = false)
private String enterpriseName;
@TableField(exist = false)
private String businessCode;
@TableField(exist = false)
private String creatorUserName;
@TableField(exist = false)
private String lastUserName;
@TableField(exist = false)
private List<ProductWarehouseEntity> productWarehouseEntityList;
}

@ -27,6 +27,9 @@ public class VoucherPagination extends Pagination {
private String moduleId;
/** 菜单id */
private String menuId;
/** id */
@JsonProperty("notId")
private String notid;
/** 凭证编号 */
@JsonProperty("voucherCode")
private Object voucherCode;
@ -50,6 +53,7 @@ public class VoucherPagination extends Pagination {
@JsonProperty("productId")
private Object productId;
@JsonProperty("excludeIdList")
private List<String> excludeIdList;
@JsonProperty("productIdList")

@ -0,0 +1,149 @@
<template>
<el-dialog title="选择凭证" :close-on-click-modal="false" :visible.sync="visible"
class="JNPF-dialog JNPF-dialog_center" lock-scroll append-to-body width="800px">
<el-row class="JNPF-common-search-box" :gutter="16">
<el-form @submit.native.prevent>
<el-col :span="10">
<el-form-item label="关键词">
<el-input v-model="keyword" placeholder="请输入关键词查询" clearable
@keyup.enter.native="search()" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item>
<el-button type="primary" icon="el-icon-search"
@click="search()">{{ $t('common.search') }}
</el-button>
<el-button icon="el-icon-refresh-right" @click="refresh()">{{ $t('common.reset') }}
</el-button>
</el-form-item>
</el-col>
</el-form>
<div class="JNPF-common-search-box-right">
<el-tooltip effect="dark" :content="$t('common.refresh')" placement="top">
<el-link icon="icon-ym icon-ym-Refresh JNPF-common-head-icon" :underline="false"
@click="search()" />
</el-tooltip>
</div>
</el-row>
<JNPF-table v-loading="listLoading" :data="list" hasC @selection-change="handleSelectionChange"
:border="false">
<el-table-column prop="documentType1" label="单据类型" align="left">
</el-table-column>
<el-table-column prop="voucherCode" label="凭证编号" align="left">
</el-table-column>
<el-table-column prop="voucherType1" label="凭证类型" align="left">
</el-table-column>
<el-table-column prop="poundCode" label="磅单编号" align="left">
</el-table-column>
<el-table-column prop="vehicleName" label="车牌号" align="left">
</el-table-column>
<el-table-column prop="supplierName" label="供应商名字" align="left">
</el-table-column>
</JNPF-table>
<pagination :total="total" :page.sync="listQuery.currentPage" :limit.sync="listQuery.pageSize"
@pagination="init" />
<span slot="footer" class="dialog-footer">
<el-button @click="visible = false">{{ $t('common.cancelButton') }}</el-button>
<el-button type="primary" @click="select()">{{ $t('common.confirmButton') }}</el-button>
</span>
</el-dialog>
</template>
<script>
import request from '@/utils/request'
import {
GoodsList
} from '@/api/extend/order'
export default {
data() {
return {
visible: false,
listLoading: true,
keyword: '',
list: [],
total: 0,
listQuery: {
superQueryJson: '',
currentPage: 1,
pageSize: 20,
sort: "desc",
sidx: "",
},
excludeIdList: [],
checked: []
}
},
methods: {
init(excludeIdList, val) {
console.log(val);
this.visible = true
this.listLoading = true
if (excludeIdList) {
this.excludeIdList = excludeIdList;
}
let query = {
...this.listQuery,
keyword: this.keyword,
excludeIdList: this.excludeIdList,
dataType: 0,
notId: val,
}
/* GoodsList(query).then(res => {
this.list = res.data.list
this.listLoading = false
}) */
request({
url: `/api/scm/WarehousingNotification/getNotificationVoucherProductList`,
method: 'post',
data: query
}).then(res => {
this.list = res.data.list
this.listLoading = false
this.total = res.data.pagination.total
})
},
refresh() {
this.keyword = ''
this.listQuery.currentPage = 1
this.listQuery.pageSize = 20
this.listQuery.sort = "desc"
this.listQuery.sidx = ""
this.init()
},
search() {
this.listQuery.currentPage = 1
this.listQuery.pageSize = 20
this.listQuery.sort = "desc"
this.listQuery.sidx = ""
this.init()
},
select() {
if (!this.checked.length) return
this.visible = false
this.$emit('refreshDataList', this.checked)
},
handleSelectionChange(val) {
this.checked = val
}
}
}
</script>
<style lang="scss" scoped>
>>> .el-dialog__body {
height: 70vh;
padding: 0 0 10px !important;
display: flex;
flex-direction: column;
overflow: hidden;
.JNPF-common-search-box {
margin-bottom: 0;
.JNPF-common-search-box-right {
padding: 10px 10px 0 0;
}
}
}
</style>

@ -0,0 +1,149 @@
<template>
<el-dialog title="选择凭证" :close-on-click-modal="false" :visible.sync="visible"
class="JNPF-dialog JNPF-dialog_center" lock-scroll append-to-body width="800px">
<el-row class="JNPF-common-search-box" :gutter="16">
<el-form @submit.native.prevent>
<el-col :span="10">
<el-form-item label="关键词">
<el-input v-model="keyword" placeholder="请输入关键词查询" clearable
@keyup.enter.native="search()" />
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item>
<el-button type="primary" icon="el-icon-search"
@click="search()">{{ $t('common.search') }}
</el-button>
<el-button icon="el-icon-refresh-right" @click="refresh()">{{ $t('common.reset') }}
</el-button>
</el-form-item>
</el-col>
</el-form>
<div class="JNPF-common-search-box-right">
<el-tooltip effect="dark" :content="$t('common.refresh')" placement="top">
<el-link icon="icon-ym icon-ym-Refresh JNPF-common-head-icon" :underline="false"
@click="search()" />
</el-tooltip>
</div>
</el-row>
<JNPF-table v-loading="listLoading" :data="list" hasC @selection-change="handleSelectionChange"
:border="false">
<el-table-column prop="documentType1" label="单据类型" align="left">
</el-table-column>
<el-table-column prop="voucherCode" label="凭证编号" align="left">
</el-table-column>
<el-table-column prop="voucherType1" label="凭证类型" align="left">
</el-table-column>
<el-table-column prop="poundCode" label="磅单编号" align="left">
</el-table-column>
<el-table-column prop="vehicleName" label="车牌号" align="left">
</el-table-column>
<el-table-column prop="supplierName" label="供应商名字" align="left">
</el-table-column>
</JNPF-table>
<pagination :total="total" :page.sync="listQuery.currentPage" :limit.sync="listQuery.pageSize"
@pagination="init" />
<span slot="footer" class="dialog-footer">
<el-button @click="visible = false">{{ $t('common.cancelButton') }}</el-button>
<el-button type="primary" @click="select()">{{ $t('common.confirmButton') }}</el-button>
</span>
</el-dialog>
</template>
<script>
import request from '@/utils/request'
import {
GoodsList
} from '@/api/extend/order'
export default {
data() {
return {
visible: false,
listLoading: true,
keyword: '',
list: [],
total: 0,
listQuery: {
superQueryJson: '',
currentPage: 1,
pageSize: 20,
sort: "desc",
sidx: "",
},
excludeIdList: [],
checked: []
}
},
methods: {
init(excludeIdList, val) {
console.log(val);
this.visible = true
this.listLoading = true
if (excludeIdList) {
this.excludeIdList = excludeIdList;
}
let query = {
...this.listQuery,
keyword: this.keyword,
excludeIdList: this.excludeIdList,
dataType: 0,
notId: val,
}
/* GoodsList(query).then(res => {
this.list = res.data.list
this.listLoading = false
}) */
request({
url: `/api/scm/WarehousingNotification/getNotificationVoucherProductList`,
method: 'post',
data: query
}).then(res => {
this.list = res.data.list
this.listLoading = false
this.total = res.data.pagination.total
})
},
refresh() {
this.keyword = ''
this.listQuery.currentPage = 1
this.listQuery.pageSize = 20
this.listQuery.sort = "desc"
this.listQuery.sidx = ""
this.init()
},
search() {
this.listQuery.currentPage = 1
this.listQuery.pageSize = 20
this.listQuery.sort = "desc"
this.listQuery.sidx = ""
this.init()
},
select() {
if (!this.checked.length) return
this.visible = false
this.$emit('refreshDataList', this.checked)
},
handleSelectionChange(val) {
this.checked = val
}
}
}
</script>
<style lang="scss" scoped>
>>> .el-dialog__body {
height: 70vh;
padding: 0 0 10px !important;
display: flex;
flex-direction: column;
overflow: hidden;
.JNPF-common-search-box {
margin-bottom: 0;
.JNPF-common-search-box-right {
padding: 10px 10px 0 0;
}
}
}
</style>

@ -869,7 +869,7 @@ export default {
const e = this.dataForm.warehousingInspectionConclusionList[i];
if (!e.netWeight) {
this.$message({
message: '净重(自动计算)不能为空,请再一次输入质检后的毛,皮,扣进行自动计算',
message: '净重(自动计算)不能为空,请再一次输入质检后的毛,皮,扣',
type: 'error',
duration: 2500
});

@ -1,27 +1,30 @@
<template>
<div :style="{ margin: '0 auto', width: '100%' }">
<el-row :gutter="15" class="">
<el-form ref="formRef" :model="dataForm" :rules="dataRule" size="small" label-width="100px" label-position="right"
:disabled="setting.readonly">
<el-form ref="formRef" :model="dataForm" :rules="dataRule" size="small" label-width="100px"
label-position="right" :disabled="setting.readonly">
<template v-if="!loading && formOperates">
<!-- 具体表单 -->
<el-col :span="24">
<div style="padding:15px 0px">
<span style="color: #409EFF;"></span>
<span style="font-size: 14px;font-weight: 500;color:rgb(102, 102, 102);">基础信息</span>
</div>
<div style="padding:15px 0px">
<span style="color: #409EFF;"></span>
<span style="font-size: 14px;font-weight: 500;color:rgb(102, 102, 102);">基础信息</span>
</div>
</el-col>
<el-col :span="8" v-if="judgeShow('documentNo')">
<jnpf-form-tip-item label="单据编号" v-if="judgeShow('documentNo')" prop="documentNo">
<JnpfInput v-model="dataForm.documentNo" @change="changeData('documentNo', -1)" placeholder="系统自动生成"
:disabled="judgeWrite('documentNo')" readonly :style='{ "width": "100%" }'>
<JnpfInput v-model="dataForm.documentNo" @change="changeData('documentNo', -1)"
placeholder="系统自动生成" :disabled="judgeWrite('documentNo')" readonly
:style='{ "width": "100%" }'>
</JnpfInput>
</jnpf-form-tip-item>
</el-col>
<el-col :span="8" v-if="judgeShow('warehousingOutboundType')">
<jnpf-form-tip-item label="单据类型" v-if="judgeShow('warehousingOutboundType')" prop="warehousingOutboundType">
<JnpfSelect v-model="dataForm.warehousingOutboundType" @change="changeData('warehousingOutboundType', -1)"
placeholder="请选择" :disabled="judgeWrite('warehousingOutboundType')" clearable
<jnpf-form-tip-item label="单据类型" v-if="judgeShow('warehousingOutboundType')"
prop="warehousingOutboundType">
<JnpfSelect v-model="dataForm.warehousingOutboundType"
@change="changeData('warehousingOutboundType', -1)" placeholder="请选择"
:disabled="judgeWrite('warehousingOutboundType')" clearable
:style='{ "width": "100%" }' :options="warehousingOutboundTypeOptions"
:props="warehousingOutboundTypeProps">
</JnpfSelect>
@ -29,73 +32,85 @@
</el-col>
<el-col :span="8" v-if="judgeShow('warehousingId')">
<jnpf-form-tip-item label="关联单号" v-if="judgeShow('warehousingId')" prop="warehousingId">
<JnpfPopupSelect v-model="dataForm.warehousingId" @change="changeData('warehousingId', -1)"
:rowIndex="null" :formData="dataForm" :templateJson="interfaceRes.warehousingId" placeholder="请选择"
:disabled="judgeWrite('warehousingId')" propsValue="id" popupWidth="800px" popupTitle="选择数据"
popupType="dialog" relationField='warehousing_code' field='warehousingId'
interfaceId="529924192531927237" :pageSize="20" :columnOptions="warehousingIdcolumnOptions" clearable
:style='{ "width": "100%" }'>
<JnpfPopupSelect v-model="dataForm.warehousingId"
@change="changeData('warehousingId', -1)" :rowIndex="null" :formData="dataForm"
:templateJson="interfaceRes.warehousingId" placeholder="请选择"
:disabled="judgeWrite('warehousingId')" propsValue="id" popupWidth="800px"
popupTitle="选择数据" popupType="dialog" relationField='warehousing_code'
field='warehousingId' interfaceId="529924192531927237" :pageSize="20"
:columnOptions="warehousingIdcolumnOptions" clearable :style='{ "width": "100%" }'>
</JnpfPopupSelect>
</jnpf-form-tip-item>
</el-col>
<el-col :span="8" v-if="judgeShow('warehouseId')">
<jnpf-form-tip-item label="出库仓库" v-if="judgeShow('warehouseId')" prop="warehouseId">
<JnpfPopupSelect v-model="dataForm.warehouseId" @change="changeData('warehouseId', -1)" :rowIndex="null"
:formData="dataForm" :templateJson="interfaceRes.warehouseId" placeholder="请选择"
:disabled="judgeWrite('warehouseId')" propsValue="id" popupWidth="800px" popupTitle="选择数据"
popupType="dialog" relationField='name' field='warehouseId' interfaceId="529617754022498181"
:pageSize="20" :columnOptions="warehouseIdcolumnOptions" clearable :style='{ "width": "100%" }'>
<JnpfPopupSelect v-model="dataForm.warehouseId"
@change="changeData('warehouseId', -1)" :rowIndex="null" :formData="dataForm"
:templateJson="interfaceRes.warehouseId" placeholder="请选择"
:disabled="judgeWrite('warehouseId')" propsValue="id" popupWidth="800px"
popupTitle="选择数据" popupType="dialog" relationField='name' field='warehouseId'
interfaceId="529617754022498181" :pageSize="20"
:columnOptions="warehouseIdcolumnOptions" clearable :style='{ "width": "100%" }'>
</JnpfPopupSelect>
</jnpf-form-tip-item>
</el-col>
<el-col :span="8" v-if="judgeShow('warehousingTime')">
<jnpf-form-tip-item label="出库时间" v-if="judgeShow('warehousingTime')" prop="warehousingTime">
<JnpfDatePicker v-model="dataForm.warehousingTime" @change="changeData('warehousingTime', -1)"
:startTime="dateTime(false, 1, 1, '', '')" :endTime="dateTime(false, 1, 1, '', '')" placeholder="请选择"
:disabled="judgeWrite('warehousingTime')" clearable :style='{ "width": "100%" }' type="date"
format="yyyy-MM-dd">
<jnpf-form-tip-item label="出库时间" v-if="judgeShow('warehousingTime')"
prop="warehousingTime">
<JnpfDatePicker v-model="dataForm.warehousingTime"
@change="changeData('warehousingTime', -1)"
:startTime="dateTime(false, 1, 1, '', '')" :endTime="dateTime(false, 1, 1, '', '')"
placeholder="请选择" :disabled="judgeWrite('warehousingTime')" clearable
:style='{ "width": "100%" }' type="date" format="yyyy-MM-dd">
</JnpfDatePicker>
</jnpf-form-tip-item>
</el-col>
<el-col :span="8" v-if="judgeShow('outboundReason')">
<jnpf-form-tip-item label="出库原因" v-if="judgeShow('outboundReason')" prop="outboundReason">
<JnpfInput v-model="dataForm.outboundReason" @change="changeData('outboundReason', -1)" placeholder="请输入"
<jnpf-form-tip-item label="出库原因" v-if="judgeShow('outboundReason')"
prop="outboundReason">
<JnpfInput v-model="dataForm.outboundReason"
@change="changeData('outboundReason', -1)" placeholder="请输入"
:disabled="judgeWrite('outboundReason')" clearable :style='{ "width": "100%" }'>
</JnpfInput>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24" v-if="judgeShow('remark')">
<jnpf-form-tip-item label="备注" v-if="judgeShow('remark')" prop="remark">
<JnpfInput v-model="dataForm.remark" @change="changeData('remark', -1)" placeholder="请输入"
:disabled="judgeWrite('remark')" clearable :style='{ "width": "100%" }'>
<JnpfInput v-model="dataForm.remark" @change="changeData('remark', -1)"
placeholder="请输入" :disabled="judgeWrite('remark')" clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24">
<div style="padding:15px 0px">
<span style="color: #409EFF;"></span>
<span style="font-size: 14px;font-weight: 500;color:rgb(102, 102, 102);">出库凭证</span>
</div>
<div style="padding:15px 0px">
<span style="color: #409EFF;"></span>
<span style="font-size: 14px;font-weight: 500;color:rgb(102, 102, 102);">出库凭证</span>
</div>
</el-col>
<el-col :span="24" v-if="judgeShow('-${html.relationField}')">
<jnpf-form-tip-item label-width="0">
<el-table :data="dataForm.warehousingOutboundPoundlistList" size='mini' border>
<el-table-column type="index" width="50" label="序号" align="center" fixed="left" />
<el-table-column label="关联凭证" min-width="150px"
v-if="judgeShow('warehousingoutboundpoundlist-voucherId')" prop="voucherId" align="center" width="220" fixed="left">
v-if="judgeShow('warehousingoutboundpoundlist-voucherId')" prop="voucherId"
align="center" width="220" fixed="left">
<template slot="header">
<span class="required-sign"
v-if="judgeRequired('warehousingoutboundpoundlistList-voucherId')">*</span>关联凭证
</template>
<template slot-scope="scope">
<JnpfPopupSelect v-model="scope.row.voucherId" @change="changeDataVoucher" :rowIndex="scope.$index"
:formData="dataForm" :templateJson="interfaceRes.warehousingoutboundpoundlistvoucherId"
<JnpfPopupSelect v-model="scope.row.voucherId" @change="changeDataVoucher"
:rowIndex="scope.$index" :formData="dataForm"
:templateJson="interfaceRes.warehousingoutboundpoundlistvoucherId"
placeholder="请选择"
:disabled="judgeWrite('warehousingoutboundpoundlistList') || judgeWrite('warehousingoutboundpoundlistList-voucherId')"
hasPage propsValue="id" popupWidth="800px" popupTitle="选择数据" popupType="dialog"
relationField='voucher_code' :field="'voucherId' + scope.$index" interfaceId="529929122277773509"
:pageSize="20" :columnOptions="warehousingoutboundpoundlistvoucherIdcolumnOptions" clearable
hasPage propsValue="id" popupWidth="800px" popupTitle="选择数据"
popupType="dialog" relationField='voucher_code'
:field="'voucherId' + scope.$index" interfaceId="529929122277773509"
:pageSize="20"
:columnOptions="warehousingoutboundpoundlistvoucherIdcolumnOptions" clearable
:style='{ "width": "100%" }'>
</JnpfPopupSelect>
</template>
@ -106,8 +121,8 @@
<span class="required-sign"></span>单据类型
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.documentTypes" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
<JnpfInput v-model="scope.row.documentTypes" placeholder="请输入" disabled
clearable :style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
@ -117,7 +132,7 @@
<span class="required-sign"></span>凭证类型
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.voucherType" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.voucherType" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -128,7 +143,7 @@
<span class="required-sign"></span>磅单编号
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.poundCode" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.poundCode" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -139,8 +154,8 @@
<span class="required-sign"></span>磅单时间
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.poundlistTime" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
<JnpfInput v-model="scope.row.poundlistTime" placeholder="请输入" disabled
clearable :style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
@ -150,8 +165,8 @@
<span class="required-sign"></span>车辆信息
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.vehicleNumber" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
<JnpfInput v-model="scope.row.vehicleNumber" placeholder="请输入" disabled
clearable :style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
@ -160,18 +175,18 @@
<span class="required-sign"></span>商品名称
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.productName" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.productName" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
<el-table-column label="规格" prop="productSpec" align="center" width="150">
<el-table-column label="规格" prop="spec" align="center" width="150">
<template slot="header">
<span class="required-sign"></span>规格
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.productSpec" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.spec" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -181,7 +196,7 @@
<span class="required-sign"></span>单位
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.unit" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.unit" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -191,7 +206,7 @@
<span class="required-sign"></span>毛重
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.grossWeight" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.grossWeight" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -201,7 +216,7 @@
<span class="required-sign"></span>皮重
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.tareWeight" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.tareWeight" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -211,7 +226,7 @@
<span class="required-sign"></span>扣重
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.buckleWeight" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.buckleWeight" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -221,41 +236,48 @@
<span class="required-sign"></span>净重
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.netWeight" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.netWeight" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
<el-table-column label="备注" prop="remark" align="center" width="150">
<!-- <el-table-column label="备注" prop="remark" align="center" width="150">
<template slot="header">
<span class="required-sign"></span>备注
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.remark" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.remark" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
</el-table-column> -->
<el-table-column label="操作" width="50" align="center" fixed="right" v-if="!judgeWrite('warehousingoutboundpoundlistList')">
<el-table-column label="操作" width="50" align="center" fixed="right"
v-if="!judgeWrite('warehousingoutboundpoundlistList')">
<template slot-scope="scope">
<el-button size="mini" type="text" class="JNPF-table-delBtn"
@click="delwarehousingoutboundpoundlistList(scope.$index)">删除</el-button>
</template>
</el-table-column>
</el-table>
<div class="table-actions" @click="addwarehousingoutboundpoundlistList()"
<!-- <div class="table-actions" @click="addwarehousingoutboundpoundlistList()"
v-if="!judgeWrite('warehousingoutboundpoundlistList')">
<el-button type="text" icon="el-icon-plus">添加</el-button>
</div> -->
<div class="table-actions" @click="choice(dataForm.warehousingId)"
v-if="!judgeWrite('warehousingoutboundpoundlistList')">
<el-button type="text" icon="el-icon-plus">添加</el-button>
</div>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24">
<div style="padding:15px 0px">
<span style="color: #409EFF;"></span>
<span style="font-size: 14px;font-weight: 500;color:rgb(102, 102, 102);">商品信息</span>
</div>
<div style="padding:15px 0px">
<span style="color: #409EFF;"></span>
<span style="font-size: 14px;font-weight: 500;color:rgb(102, 102, 102);">商品信息</span>
</div>
</el-col>
<el-col :span="24" v-if="judgeShow('warehousingoutboundpoundlist-voucher_code')">
<jnpf-form-tip-item label-width="0">
@ -264,47 +286,53 @@
</div>
<el-table :data="dataForm.warehousingOutboundProductList" size='mini'>
<el-table-column type="index" width="50" fixed="left" label="序号" align="center" />
<el-table-column label="商品名称" v-if="judgeShow('warehousingoutboundproduct-productId')" prop="productId" width="200" fixed="left" align="center">
<el-table-column label="商品名称"
v-if="judgeShow('warehousingoutboundproduct-productId')" prop="productId"
width="200" fixed="left" align="center">
<template slot="header">
<span class="required-sign"
v-if="judgeRequired('warehousingoutboundproductList-productId')">*</span>商品名称
</template>
<template slot-scope="scope">
<JnpfPopupSelect v-model="scope.row.productId" @change="changeDataProduct" :rowIndex="scope.$index"
:formData="dataForm" :templateJson="interfaceRes.warehousingoutboundproductproductId"
<JnpfPopupSelect v-model="scope.row.productId" @change="changeDataProduct"
:rowIndex="scope.$index" :formData="dataForm"
:templateJson="interfaceRes.warehousingoutboundproductproductId"
placeholder="请选择"
:disabled="judgeWrite('warehousingoutboundproductList') || judgeWrite('warehousingoutboundproductList-productId')"
hasPage propsValue="id" popupWidth="800px" popupTitle="选择数据" popupType="dialog"
relationField='name' :field="'productId' + scope.$index" interfaceId="529622659227471749"
:pageSize="20" :columnOptions="warehousingoutboundproductproductIdcolumnOptions" clearable
hasPage propsValue="id" popupWidth="800px" popupTitle="选择数据"
popupType="dialog" relationField='name' :field="'productId' + scope.$index"
interfaceId="529622659227471749" :pageSize="20"
:columnOptions="warehousingoutboundproductproductIdcolumnOptions" clearable
:style='{ "width": "100%" }'>
</JnpfPopupSelect>
</template>
</el-table-column>
<!-- <el-table-column label="规格" prop="spec">
<el-table-column label="规格" prop="spec" width="200" align="center">
<template slot="header">
<span class="required-sign"></span>规格
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.productIds" placeholder="请输入" disabled clearable
:style='{"width":"100%"}'>
<JnpfInput v-model="scope.row.spec" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column> -->
</el-table-column>
<el-table-column label="规格" prop="spec" width="200" align="center">
<el-table-column label="库存单位" prop="inventoryUnitId" width="200" align="center">
<template slot="header">
<span class="required-sign"></span>规格
<span class="required-sign"></span>库存单位
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.productIds" placeholder="请输入" disabled clearable :style='{ "width": "100%" }'>
<JnpfInput v-model="scope.row.inventoryUnitId" placeholder="请输入" disabled
clearable :style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
<el-table-column label="出库单位" v-if="judgeShow('warehousingoutboundproduct-outboundUnit')"
prop="outboundUnit" width="200" align="center">
<el-table-column label="出库单位"
v-if="judgeShow('warehousingoutboundproduct-outboundUnit')" prop="outboundUnit"
width="200" align="center">
<template slot="header">
<span class="required-sign"
v-if="judgeRequired('warehousingoutboundproductList-outboundUnit')">*</span>出库单位
@ -313,50 +341,20 @@
<JnpfPopupSelect v-model="scope.row.outboundUnit"
@change="changeData('warehousingoutboundproduct-outboundUnit', scope.$index)"
:rowIndex="scope.$index" :formData="dataForm"
:templateJson="interfaceRes.warehousingoutboundproductoutboundUnit" placeholder="请选择"
:templateJson="interfaceRes.warehousingoutboundproductoutboundUnit"
placeholder="请选择"
:disabled="judgeWrite('warehousingoutboundproductList') || judgeWrite('warehousingoutboundproductList-outboundUnit')"
hasPage propsValue="id" popupWidth="800px" popupTitle="选择数据" popupType="dialog"
relationField='unit_name' :field="'outboundUnit' + scope.$index" interfaceId="523054191598383685"
:pageSize="20" :columnOptions="warehousingoutboundproductoutboundUnitcolumnOptions" clearable
hasPage propsValue="id" popupWidth="800px" popupTitle="选择数据"
popupType="dialog" relationField='unit_name'
:field="'outboundUnit' + scope.$index" interfaceId="523054191598383685"
:pageSize="20"
:columnOptions="warehousingoutboundproductoutboundUnitcolumnOptions" clearable
:style='{ "width": "100%" }'>
</JnpfPopupSelect>
</template>
</el-table-column>
<el-table-column label="规格" prop="spec" width="200" align="center">
<template slot="header">
<span class="required-sign"></span>规格
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.spec" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
<el-table-column label="库存单位" prop="inventoryUnitIds" width="200" align="center">
<template slot="header">
<span class="required-sign"></span>库存单位
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.inventoryUnitIds" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
<el-table-column label="入库单位规格" prop="111" width="200" align="center">
<template slot="header">
<span class="required-sign"></span>入库单位规格
</template>
<template slot-scope="scope">
<JnpfInput v-model="scope.row.storageNumber" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
<el-table-column label="出库货区" v-if="judgeShow('warehousingoutboundproduct-outboundAreaId')"
<el-table-column label="出库货区"
v-if="judgeShow('warehousingoutboundproduct-outboundAreaId')"
prop="outboundAreaId" width="200" align="center">
<template slot="header">
<span class="required-sign"
@ -366,16 +364,20 @@
<JnpfPopupSelect v-model="scope.row.outboundAreaId"
@change="changeData('warehousingoutboundproduct-outboundAreaId', scope.$index)"
:rowIndex="scope.$index" :formData="dataForm"
:templateJson="interfaceRes.warehousingoutboundproductoutboundAreaId" placeholder="请选择"
:templateJson="interfaceRes.warehousingoutboundproductoutboundAreaId"
placeholder="请选择"
:disabled="judgeWrite('warehousingoutboundproductList') || judgeWrite('warehousingoutboundproductList-outboundAreaId')"
hasPage propsValue="id" popupWidth="800px" popupTitle="选择数据" popupType="dialog"
relationField='name' :field="'outboundAreaId' + scope.$index" interfaceId="529624294691458949"
:pageSize="20" :columnOptions="warehousingoutboundproductoutboundAreaIdcolumnOptions" clearable
:style='{ "width": "100%" }'>
hasPage propsValue="id" popupWidth="800px" popupTitle="选择数据"
popupType="dialog" relationField='name'
:field="'outboundAreaId' + scope.$index" interfaceId="529624294691458949"
:pageSize="20"
:columnOptions="warehousingoutboundproductoutboundAreaIdcolumnOptions"
clearable :style='{ "width": "100%" }'>
</JnpfPopupSelect>
</template>
</el-table-column>
<el-table-column label="出库数量" v-if="judgeShow('warehousingoutboundproduct-outboundNumber')"
<el-table-column label="出库数量"
v-if="judgeShow('warehousingoutboundproduct-outboundNumber')"
prop="outboundNumber" width="200" align="center">
<template slot="header">
<span class="required-sign"
@ -383,14 +385,16 @@
</template>
<template slot-scope="scope">
<JnpfInput v-model="scope.row.outboundNumber"
@change="changeData('warehousingoutboundproduct-outboundNumber', scope.$index)" placeholder="请输入"
@change="changeData('warehousingoutboundproduct-outboundNumber', scope.$index)"
placeholder="请输入"
:disabled="judgeWrite('warehousingoutboundproductList') || judgeWrite('warehousingoutboundproductList-outboundNumber')"
clearable :style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
<el-table-column label="批次号" v-if="judgeShow('warehousingoutboundproduct-batchNumber')"
prop="batchNumber" width="200" align="center">
<el-table-column label="批次号"
v-if="judgeShow('warehousingoutboundproduct-batchNumber')" prop="batchNumber"
width="200" align="center">
<template slot="header">
<span class="required-sign"
v-if="judgeRequired('warehousingoutboundproductList-batchNumber')">*</span>批次号
@ -399,18 +403,21 @@
<JnpfPopupSelect v-model="scope.row.batchNumber"
@change="changeData('warehousingoutboundproduct-batchNumber', scope.$index)"
:rowIndex="scope.$index" :formData="dataForm"
:templateJson="interfaceRes.warehousingoutboundproductbatchNumber" placeholder="请选择"
:templateJson="interfaceRes.warehousingoutboundproductbatchNumber"
placeholder="请选择"
:disabled="judgeWrite('warehousingoutboundproductList') || judgeWrite('warehousingoutboundproductList-batchNumber')"
hasPage propsValue="id" popupWidth="800px" popupTitle="选择数据" popupType="dialog"
relationField='storage_number' :field="'batchNumber' + scope.$index"
interfaceId="529928174901940421" :pageSize="20"
hasPage propsValue="id" popupWidth="800px" popupTitle="选择数据"
popupType="dialog" relationField='storage_number'
:field="'batchNumber' + scope.$index" interfaceId="529928174901940421"
:pageSize="20"
:columnOptions="warehousingoutboundproductbatchNumbercolumnOptions" clearable
:style='{ "width": "100%" }'>
</JnpfPopupSelect>
</template>
</el-table-column>
<el-table-column label="生产日期" v-if="judgeShow('warehousingoutboundproduct-dateManufacture')"
<el-table-column label="生产日期"
v-if="judgeShow('warehousingoutboundproduct-dateManufacture')"
prop="dateManufacture" width="200" align="center">
<template slot="header">
<span class="required-sign"
@ -419,14 +426,15 @@
<template slot-scope="scope">
<JnpfDatePicker v-model="scope.row.dateManufacture"
@change="changeData('warehousingoutboundproduct-dateManufacture', scope.$index)"
:startTime="dateTime(false, 1, 1, '', '')" :endTime="dateTime(false, 1, 1, '', '')"
placeholder="请选择"
:startTime="dateTime(false, 1, 1, '', '')"
:endTime="dateTime(false, 1, 1, '', '')" placeholder="请选择"
:disabled="judgeWrite('warehousingoutboundproductList') || judgeWrite('warehousingoutboundproductList-dateManufacture')"
clearable :style='{ "width": "100%" }' type="date" format="yyyy-MM-dd">
</JnpfDatePicker>
</template>
</el-table-column>
<el-table-column label="操作" width="50" align="center" fixed="right" v-if="!judgeWrite('warehousingoutboundproductList')">
<el-table-column label="操作" width="50" align="center" fixed="right"
v-if="!judgeWrite('warehousingoutboundproductList')">
<template slot-scope="scope">
<el-button size="mini" type="text" class="JNPF-table-delBtn"
@click="delwarehousingoutboundproductList(scope.$index)">删除</el-button>
@ -441,11 +449,13 @@
</el-col>
<!-- 表单结束 -->
</template>
<SelectDialog v-if="selectDialogVisible" :config="currTableConf" :formData="dataForm" ref="selectDialog"
@select="addForSelect" @close="selectDialogVisible = false" />
<SelectDialog v-if="selectDialogVisible" :config="currTableConf" :formData="dataForm"
ref="selectDialog" @select="addForSelect" @close="selectDialogVisible = false" />
</el-form>
</el-row>
<UserBox v-if="userBoxVisible" ref="userBox" @submit="submit" />
<NotificationVoucherSale v-if="notificationVoucherSaleVisible"
ref="NotificationVoucherSaleGoodsBox" @refreshDataList="initList" />
</div>
</template>
@ -460,9 +470,11 @@ import { getDefaultCurrentValueUserId } from '@/api/permission/user'
import { getDefaultCurrentValueDepartmentId } from '@/api/permission/organize'
import { getDateDay, getLaterData, getBeforeData, getBeforeTime, getLaterTime } from '@/components/Generator/utils/index.js'
import { thousandsFormat } from "@/components/Generator/utils/index"
import NotificationVoucherSale from '@/views/scm/publicPopup/NotificationVoucherSale'
export default {
mixins: [comMixin],
components: {},
components: { NotificationVoucherSale },
props: [],
data() {
return {
@ -480,6 +492,7 @@ export default {
eventType: '',
userBoxVisible: false,
selectDialogVisible: false,
notificationVoucherSaleVisible: false,
currTableConf: {},
dataValueAll: {},
addTableConf: {
@ -570,7 +583,7 @@ export default {
},
],
},
warehousingOutboundTypeOptions: [{ "fullName": "全部", "id": "1" }, { "fullName": "盘盈库", "id": "2" }, { "fullName": "采购入库", "id": "3" }, { "fullName": "调拨库", "id": "4" }, { "fullName": "退货入库", "id": "5" }, { "fullName": "其他库", "id": "6" }, { "fullName": "差异调整入库", "id": "7" }, { "fullName": "领用库", "id": "8" }, { "fullName": "货权转移库", "id": "9" }, { "fullName": "其他出库", "id": "10" }, { "fullName": "库存初始化", "id": "11" }, { "fullName": "调拨出库撤回", "id": "12" }, { "fullName": "其他出库撤回", "id": "13" }],
warehousingOutboundTypeOptions: [{ "fullName": "全部", "id": "1" }, { "fullName": "盘盈库", "id": "2" }, { "fullName": "销售出库", "id": "3" }, { "fullName": "调拨库", "id": "4" }, { "fullName": "退供出库", "id": "5" }, { "fullName": "其他库", "id": "6" }, { "fullName": "差异调整入库", "id": "7" }, { "fullName": "领用库", "id": "8" }, { "fullName": "货权转移库", "id": "9" }, { "fullName": "其他出库", "id": "10" }, { "fullName": "库存初始化", "id": "11" }],
warehousingOutboundTypeProps: { "label": "fullName", "value": "id" },
warehousingIdcolumnOptions: [{ "label": "通知编号", "value": "warehousing_code" }, { "label": "供应商", "value": "subject_basic_id" }, { "label": "仓库", "value": "warehouse_id" },],
warehouseIdcolumnOptions: [{ "label": "仓库编号", "value": "code" }, { "label": "仓库名称", "value": "name" }, { "label": "仓库简称", "value": "simple_name" },],
@ -658,8 +671,44 @@ export default {
const data = this.setting.selectData
if (data && data.flag == '出库通知转出库单') {
this.dataForm.warehousingId = data.id
this.dataForm.warehouseId = data.warehouseId
this.dataForm.warehousingOutboundProductList = data.tableField121
}
},
choice(val) {
this.notificationVoucherSaleVisible = true
let excludeIdList = [];
for (let i = 0; i < this.dataForm.warehousingOutboundPoundlistList.length; i++) {
excludeIdList.push(this.dataForm.warehousingOutboundPoundlistList[i].voucherId);
}
this.$nextTick(() => {
this.$refs.NotificationVoucherSaleGoodsBox.init(excludeIdList, val)
})
},
initList(list) {
for (let i = 0; i < list.length; i++) {
const e = list[i];
let item = {
voucherId: e.id,
documentTypes: e.documentType1,
voucherType: e.voucherType1,
poundCode: e.poundCode,
poundlistTime: e.poundlistTime,
vehicleNumber: e.vehicleNumber,
unit: e.unit,
spec: e.spec,
grossWeight: e.grossWeight,
tareWeight: e.tareWeight,
buckleWeight: e.buckleWeight,
netWeight: e.netWeight,
productName: e.productName,
}
this.dataForm.warehousingOutboundPoundlistList.push(item)
}
},
changeData(model, index) {
this.isEdit = false

@ -116,8 +116,8 @@
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.documentTypes" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
<JnpfInput v-model="scope.row.documentTypes" placeholder="请输入" disabled
clearable :style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
@ -129,7 +129,7 @@
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.voucherType" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.voucherType" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -142,7 +142,7 @@
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.poundCode" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.poundCode" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -155,8 +155,8 @@
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.poundlistTime" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
<JnpfInput v-model="scope.row.poundlistTime" placeholder="请输入" disabled
clearable :style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
@ -168,8 +168,8 @@
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.vehicleNumber" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
<JnpfInput v-model="scope.row.vehicleNumber" placeholder="请输入" disabled
clearable :style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
@ -180,20 +180,20 @@
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.productName" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.productName" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
<el-table-column label="规格" prop="productSpec" align="center" width="150">
<el-table-column label="规格" prop="spec" align="center" width="150">
<template slot="header">
<span class="required-sign"></span>规格
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.productSpec" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.spec" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -205,7 +205,7 @@
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.unit" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.unit" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -217,7 +217,7 @@
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.grossWeight" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.grossWeight" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -229,7 +229,7 @@
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.tareWeight" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.tareWeight" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -241,7 +241,7 @@
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.buckleWeight" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.buckleWeight" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -253,20 +253,7 @@
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.netWeight" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
<el-table-column label="备注" prop="remark" align="center" width="150">
<template slot="header">
<span class="required-sign"></span>备注
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.remark" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.netWeight" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -281,10 +268,16 @@
</template>
</el-table-column>
</el-table>
<div class="table-actions" @click="addwarehousingstoragepoundlistList()"
<!-- <div class="table-actions" @click="addwarehousingstoragepoundlistList()"
v-if="!judgeWrite('warehousingstoragepoundlistList')">
<el-button type="text" icon="el-icon-plus">添加</el-button>
</div> -->
<div class="table-actions" @click="choice(dataForm.warehousingId)"
v-if="!judgeWrite('warehousingstoragepoundlistList')">
<el-button type="text" icon="el-icon-plus">添加</el-button>
</div>
</jnpf-form-tip-item>
</el-col>
<el-col :span="24">
@ -331,20 +324,20 @@
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.spec" placeholder="请输入" disabled clearable
<JnpfInput v-model="scope.row.spec" placeholder="请输入" disabled clearable
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
<el-table-column label="库存单位" prop="inventoryUnitIds" width="200" align="center">
<el-table-column label="库存单位" prop="inventoryUnitId" width="200" align="center">
<template slot="header">
<span class="required-sign"></span>库存单位
</template>
<template slot-scope="scope">
<JnpfInput v-model="dataForm.inventoryUnitIds" placeholder="请输入" disabled
<JnpfInput v-model="scope.row.inventoryUnitId" placeholder="请输入" disabled
clearable :style='{ "width": "100%" }'>
</JnpfInput>
</template>
@ -376,7 +369,7 @@
</template>
</el-table-column>
<el-table-column label="入库单位规格" prop="111" width="200" align="center">
<!-- <el-table-column label="入库单位规格" prop="111" width="200" align="center">
<template slot="header">
<span class="required-sign"></span>入库单位规格
@ -387,7 +380,7 @@
:style='{ "width": "100%" }'>
</JnpfInput>
</template>
</el-table-column>
</el-table-column> -->
<el-table-column label="入库货区"
v-if="judgeShow('warehousingstorageproduct-storageAreaId')" prop="storageAreaId"
@ -490,6 +483,8 @@
</el-form>
</el-row>
<UserBox v-if="userBoxVisible" ref="userBox" @submit="submit" />
<NotificationVoucher v-if="notificationVoucherVisible" ref="NotificationVoucherGoodsBox"
@refreshDataList="initList" />
</div>
</template>
@ -504,9 +499,11 @@ import { getDefaultCurrentValueUserId } from '@/api/permission/user'
import { getDefaultCurrentValueDepartmentId } from '@/api/permission/organize'
import { getDateDay, getLaterData, getBeforeData, getBeforeTime, getLaterTime } from '@/components/Generator/utils/index.js'
import { thousandsFormat } from "@/components/Generator/utils/index"
import NotificationVoucher from '@/views/scm/publicPopup/NotificationVoucher'
export default {
mixins: [comMixin],
components: {},
components: { NotificationVoucher },
props: [],
data() {
return {
@ -524,6 +521,7 @@ export default {
eventType: '',
userBoxVisible: false,
selectDialogVisible: false,
notificationVoucherVisible: false,
currTableConf: {},
dataValueAll: {},
addTableConf: {
@ -681,29 +679,48 @@ export default {
initStorageData() {
const data = this.setting.selectData
console.log(this.setting.selectData);
// if (data.flag == '') {
// this.dataForm.firstSubjectBasicId = data[0].supplierId
// this.dataForm.enterpriseId = data[0].customerId
// data.forEach(item => {
// this.dataForm.businessOrderProductRelationalList = []
// this.dataForm.businessOrderProductRelationalList = item.voucherProductList
// });
// }
if (data && data.flag == '入库通知转入库单') {
console.log(data);
this.dataForm.warehousingId = data.id,
this.dataForm.warehouseId = data.warehouseId
this.dataForm.warehousingStorageProductList = data.tableField121
}
},
// this.dataForm.businessLineId = data[0].businessLineId_id
// this.dataForm.counterpartOrderCode = data[0].counterpartOrderCode
// this.dataForm.urgentOrder = data[0].urgentOrder
// this.deliveryType = data[0].deliveryType
// this.dataForm.businessOrderProductRelationalList = data[0].businessOrderProductRelationalList
choice(val) {
this.notificationVoucherVisible = true
let excludeIdList = [];
for (let i = 0; i < this.dataForm.warehousingStoragePoundlistList.length; i++) {
excludeIdList.push(this.dataForm.warehousingStoragePoundlistList[i].voucherId);
}
this.$nextTick(() => {
this.$refs.NotificationVoucherGoodsBox.init(excludeIdList, val)
})
},
initList(list) {
for (let i = 0; i < list.length; i++) {
const e = list[i];
let item = {
voucherId: e.id,
documentTypes: e.documentType1,
voucherType: e.voucherType1,
poundCode: e.poundCode,
poundlistTime: e.poundlistTime,
vehicleNumber: e.vehicleNumber,
unit: e.unit,
spec: e.spec,
grossWeight: e.grossWeight,
tareWeight: e.tareWeight,
buckleWeight: e.buckleWeight,
netWeight: e.netWeight,
productName: e.productName,
}
this.dataForm.warehousingStoragePoundlistList.push(item)
}
},
changeData(model, index) {
this.isEdit = false
this.childIndex = index

@ -51,17 +51,17 @@
<el-table-column prop="warehousingCode" label="通知编号" align="center" sortable width="150"
fixed="left">
</el-table-column>
<el-table-column prop="businessId" label="采购订单" align="center" sortable width="150"
<el-table-column prop="businessCode" label="关联单据号" align="center" sortable width="150"
fixed="left">
</el-table-column>
<el-table-column prop="subjectBasicId" label="供应商名称" align="center" sortable width="150"
<el-table-column prop="subjectBasicName" label="供应商名称" align="center" sortable width="150"
fixed="left">
</el-table-column>
<el-table-column prop="shippingAddress" label="收货地址" align="center" width="150">
</el-table-column>
<el-table-column prop="enterpriseId" label="机构名称" align="center" width="150">
<el-table-column prop="enterpriseName" label="机构名称" align="center" width="150">
</el-table-column>
<el-table-column prop="warehouseId" label="入库仓库" align="center" width="150">
<el-table-column prop="warehouseName" label="入库仓库" align="center" width="150">
</el-table-column>
<el-table-column prop="notificationStorageNumber" label="计划入库数量" align="center"
@ -88,11 +88,11 @@
<el-table-column prop="creatorTime" label="创建时间" align="center" width="150">
</el-table-column>
<el-table-column prop="creatorUserId" label="创建用户" align="center" width="150">
<el-table-column prop="creatorUserName" label="创建用户" align="center" width="150">
</el-table-column>
<el-table-column prop="lastModifyTime" label="修改时间" align="center" width="150">
</el-table-column>
<el-table-column prop="lastModifyUserId" label="修改用户" align="center" width="150">
<el-table-column prop="lastUserName" label="修改用户" align="center" width="150">
</el-table-column>
<el-table-column prop="flowState" label="状态" align="center" width="150">

@ -29,7 +29,6 @@
v-has="'btn_batchRemove'">批量删除
</el-button> -->
</div>
<div class="JNPF-common-head-right">
<el-tooltip content="高级查询" placement="top" v-if="true">
@ -37,13 +36,16 @@
@click="openSuperQuery()" />
</el-tooltip>
<el-tooltip effect="dark" :content="$t('common.refresh')" placement="top">
<el-link icon="icon-ym icon-ym-Refresh JNPF-common-head-icon" :underline="false" @click="initData()" />
<el-link icon="icon-ym icon-ym-Refresh JNPF-common-head-icon" :underline="false"
@click="initData()" />
</el-tooltip>
</div>
</div>
<JNPF-table v-loading="listLoading" :data="list" @sort-change='sortChange' has-c
@selection-change="handleSelectionChange" :span-method="arraySpanMethod" border custom-column>
<el-table-column prop="warehousingCode" label="通知编号" align="center" sortable width="200" fixed="left">
@selection-change="handleSelectionChange" :span-method="arraySpanMethod" border
custom-column>
<el-table-column prop="warehousingCode" label="通知编号" align="center" sortable width="200"
fixed="left">
</el-table-column>
<el-table-column prop="businessId" label="销售订单" align="center" width="150">
</el-table-column>
@ -58,12 +60,14 @@
<el-table-column prop="deliveryAddress" label="发货地址" align="center" width="150">
</el-table-column>
<el-table-column prop="notificationStorageNumber" label="计划出库数量" align="center" width="150">
<el-table-column prop="notificationStorageNumber" label="计划出库数量" align="center"
width="150">
</el-table-column>
<el-table-column prop="receivedQantity" label="已确认出库数量" align="center" width="150">
</el-table-column>
<el-table-column prop="remainingStockableQuantity" label="待确认出库数量" align="center" width="150">
<el-table-column prop="remainingStockableQuantity" label="待确认出库数量" align="center"
width="150">
</el-table-column>
<el-table-column prop="warehouseId" label="期望送达时间" align="center" width="150">
</el-table-column>
@ -99,9 +103,9 @@
</el-table-column>
<el-table-column label="操作" align="center" fixed="right" width="150">
<template slot-scope="scope">
<el-button type="text" :disabled="[1, 2, 4, 5].indexOf(scope.row.flowState) > -1"
<!-- <el-button type="text" :disabled="[1, 2, 4, 5].indexOf(scope.row.flowState) > -1"
@click="updateHandle(scope.row)" v-has="'btn_edit'">编辑
</el-button>
</el-button> -->
<el-button type="text" class="JNPF-table-delBtn"
:disabled="[1, 2, 3, 5].indexOf(scope.row.flowState) > -1" v-has="'btn_remove'"
@click="handleDel(scope.row.id)">删除
@ -110,7 +114,9 @@
<el-button size="mini" type="text" :disabled="!scope.row.flowState"
@click="updateHandle(scope.row, scope.row.flowState)">详情</el-button>
</el-button>
<el-button size="mini" type="text" v-has="'btn-warehousing'" @click="addwarehousing(scope.row)">
<el-button size="mini" type="text" v-has="'btn-warehousing'"
@click="addwarehousing(scope.row)">出库
</el-button>
<!-- <el-button type="text" icon="icon-ym icon-ym-btn-add" v-has="'btn-warehousingsale'"
@click="addOrUpdateHandle()">出库
@ -119,18 +125,20 @@
</template>
</el-table-column>
</JNPF-table>
<pagination :total="total" :page.sync="listQuery.currentPage" :limit.sync="listQuery.pageSize"
@pagination="initData" />
<pagination :total="total" :page.sync="listQuery.currentPage"
:limit.sync="listQuery.pageSize" @pagination="initData" />
</div>
</div>
<JNPF-Form v-if="formVisible" ref="JNPFForm" @refresh="refresh" />
<ExportBox v-if="exportBoxVisible" ref="ExportBox" @download="download" />
<FlowBox v-if="flowVisible" ref="FlowBox" @close="colseFlow" />
<el-dialog title="请选择流程" :close-on-click-modal="false" append-to-body :visible.sync="flowListVisible"
class="JNPF-dialog template-dialog JNPF-dialog_center" lock-scroll width="400px">
<el-dialog title="请选择流程" :close-on-click-modal="false" append-to-body
:visible.sync="flowListVisible" class="JNPF-dialog template-dialog JNPF-dialog_center"
lock-scroll width="400px">
<el-scrollbar class="template-list">
<div class="template-item" v-for="item in flowList" :key="item.id" @click="selectFlow(item)">
<div class="template-item" v-for="item in flowList" :key="item.id"
@click="selectFlow(item)">
<!-- {{item.fullName}} -->
{{ "出库单" }}
@ -140,8 +148,10 @@
<ImportBox v-if="uploadBoxVisible" ref="UploadBox" @refresh="initData" />
<Detail v-if="detailVisible" ref="Detail" @refresh="detailVisible = false" />
<ToFormDetail v-if="toFormDetailVisible" ref="toFormDetail" @close="toFormDetailVisible = false" />
<SuperQuery v-if="superQueryVisible" ref="SuperQuery" :columnOptions="superQueryJson" @superQuery="superQuery" />
<ToFormDetail v-if="toFormDetailVisible" ref="toFormDetail"
@close="toFormDetailVisible = false" />
<SuperQuery v-if="superQueryVisible" ref="SuperQuery" :columnOptions="superQueryJson"
@superQuery="superQuery" />
<saleRouter v-if="saleVisible" ref="saleRouter" @refresh="initData" />

Loading…
Cancel
Save