add:按钮权限、6.007库存同步中鼎

This commit is contained in:
zhaoyf
2026-07-30 19:33:32 +08:00
parent b4db802053
commit 4abbc1a41c
18 changed files with 207 additions and 89 deletions

View File

@@ -17,9 +17,12 @@ import org.nl.wms.basedata_manage.service.dao.MdPbStoragevehicleext;
import org.nl.wms.basedata_manage.service.dao.Structattr; import org.nl.wms.basedata_manage.service.dao.Structattr;
import org.nl.wms.basedata_manage.service.dao.mapper.MdPbStoragevehicleextMapper; import org.nl.wms.basedata_manage.service.dao.mapper.MdPbStoragevehicleextMapper;
import org.nl.wms.basedata_manage.service.dto.MdPbStoragevehicleextDto; import org.nl.wms.basedata_manage.service.dto.MdPbStoragevehicleextDto;
import org.nl.wms.decision_manage.service.strategyConfig.decisioner.impl.diy.InventoryRuleHandler;
import org.nl.wms.ext_manage.api.EasApi; import org.nl.wms.ext_manage.api.EasApi;
import org.nl.wms.ext_manage.api.request.QueryEasStockRequest; import org.nl.wms.ext_manage.api.request.QueryEasStockRequest;
import org.nl.wms.ext_manage.api.response.QueryEasStockResponse; import org.nl.wms.ext_manage.api.response.QueryEasStockResponse;
import org.nl.wms.ext_manage.service.WmsToZDWmdService;
import org.nl.wms.ext_manage.service.dto.ZDInventory;
import org.nl.wms.warehouse_manage.enums.IOSEnum; import org.nl.wms.warehouse_manage.enums.IOSEnum;
import org.nl.wms.warehouse_manage.service.IMdPbGroupplateService; import org.nl.wms.warehouse_manage.service.IMdPbGroupplateService;
import org.nl.wms.warehouse_manage.service.dao.GroupPlate; import org.nl.wms.warehouse_manage.service.dao.GroupPlate;
@@ -49,6 +52,10 @@ public class MdPbStoragevehicleextServiceImpl extends ServiceImpl<MdPbStorageveh
private IStructattrService iStructattrService; private IStructattrService iStructattrService;
@Autowired @Autowired
private IMdMeMaterialbaseService iMdMeMaterialbaseService; private IMdMeMaterialbaseService iMdMeMaterialbaseService;
@Autowired
private WmsToZDWmdService wmsToZDWmdService;
@Autowired
private InventoryRuleHandler inventoryRuleHandler;
@Override @Override
public IPage<JSONObject> queryAll(Map whereJson, PageQuery page) { public IPage<JSONObject> queryAll(Map whereJson, PageQuery page) {
@@ -68,11 +75,7 @@ public class MdPbStoragevehicleextServiceImpl extends ServiceImpl<MdPbStorageveh
new LambdaQueryWrapper<Structattr>() new LambdaQueryWrapper<Structattr>()
.eq(Structattr::getSect_code, warehouseno) .eq(Structattr::getSect_code, warehouseno)
.last("LIMIT 1")); .last("LIMIT 1"));
QueryEasStockRequest easRequest = new QueryEasStockRequest(); int updateCount = 0, addCount = 0, deleteCount = 0;
easRequest.setOrgno("01.09.14");
easRequest.setWarehouseno(warehouseno);
List<QueryEasStockResponse> easStocks = easApi.queryStock(easRequest);
List<JSONObject> localStocks = this.baseMapper.querySyncByStorCode(warehouseno); List<JSONObject> localStocks = this.baseMapper.querySyncByStorCode(warehouseno);
Map<String, JSONObject> localMap = new HashMap<>(); Map<String, JSONObject> localMap = new HashMap<>();
@@ -80,63 +83,119 @@ public class MdPbStoragevehicleextServiceImpl extends ServiceImpl<MdPbStorageveh
String key = local.getString("material_code") + "_" + local.getString("pcsn"); String key = local.getString("material_code") + "_" + local.getString("pcsn");
localMap.put(key, local); localMap.put(key, local);
} }
if ("6.007".equals(warehouseno)){//装配线边库同步中鼎库存
List<ZDInventory> zdInventories = wmsToZDWmdService.queryInventoryByHouseCode(warehouseno);
Set<String> zdKeys = new HashSet<>();
for (ZDInventory zdInventory : zdInventories) {
String key = zdInventory.getSkuCode() + "_" + zdInventory.getBatchNo();
zdKeys.add(key);
if (localMap.containsKey(key)) {
JSONObject local = localMap.get(key);
GroupPlate plate = new GroupPlate();
plate.setGroup_id(local.getString("group_id"));
plate.setQty(zdInventory.getQty());
iMdPbGroupplateService.updateById(plate);
updateCount++;
} else {
GroupPlate plate = new GroupPlate();
plate.setGroup_id(IdUtil.getStringId());
plate.setStoragevehicle_code(struct.getStoragevehicle_code());
plate.setMaterial_code(zdInventory.getSkuCode());
plate.setPcsn(Optional.ofNullable(zdInventory.getBatchNo()).filter(s -> !s.isEmpty()).orElse("1"));
plate.setQty(zdInventory.getQty());
plate.setStatus(IOSEnum.GROUP_PLATE_STATUS.code("入库"));
plate.setCreate_time(DateUtil.now());
plate.setCreate_id(SecurityUtils.getCurrentUserId());
plate.setCreate_name(SecurityUtils.getCurrentUsername());
Set<String> easKeys = new HashSet<>(); MdMeMaterialbase material = iMdMeMaterialbaseService.getOne(
int updateCount = 0, addCount = 0, deleteCount = 0; new LambdaQueryWrapper<MdMeMaterialbase>()
.eq(MdMeMaterialbase::getMaterial_code, zdInventory.getSkuCode()));
for (QueryEasStockResponse eas : easStocks) { if (material != null) {
String key = eas.getMaterialno() + "_" + eas.getLotnumber(); plate.setQty_unit_id(material.getQty_unit_id());
easKeys.add(key); if (plate.getQty_unit_name() == null) {
plate.setQty_unit_name(material.getQty_unit_name());
if (localMap.containsKey(key)) { }
JSONObject local = localMap.get(key);
GroupPlate plate = new GroupPlate();
plate.setGroup_id(local.getString("group_id"));
plate.setQty(new BigDecimal(eas.getQty()));
iMdPbGroupplateService.updateById(plate);
updateCount++;
} else {
GroupPlate plate = new GroupPlate();
plate.setGroup_id(IdUtil.getStringId());
plate.setStoragevehicle_code(struct.getStoragevehicle_code());
plate.setMaterial_code(eas.getMaterialno());
plate.setPcsn(Optional.ofNullable(eas.getLotnumber()).filter(s -> !s.isEmpty()).orElse("1"));
plate.setQty(new BigDecimal(eas.getQty()));
plate.setQty_unit_name(eas.getUnitname());
plate.setStatus(IOSEnum.GROUP_PLATE_STATUS.code("入库"));
plate.setCreate_time(DateUtil.now());
plate.setCreate_id(SecurityUtils.getCurrentUserId());
plate.setCreate_name(SecurityUtils.getCurrentUsername());
MdMeMaterialbase material = iMdMeMaterialbaseService.getOne(
new LambdaQueryWrapper<MdMeMaterialbase>()
.eq(MdMeMaterialbase::getMaterial_code, eas.getMaterialno()));
if (material != null) {
plate.setQty_unit_id(material.getQty_unit_id());
if (plate.getQty_unit_name() == null) {
plate.setQty_unit_name(material.getQty_unit_name());
} }
iMdPbGroupplateService.save(plate);
addCount++;
} }
}
iMdPbGroupplateService.save(plate); for (JSONObject local : localStocks) {
String key = local.getString("material_code") + "_" + local.getString("pcsn");
if (!zdKeys.contains(key)) {
iMdPbGroupplateService.removeById(local.getString("group_id"));
deleteCount++;
}
}
}else{
QueryEasStockRequest easRequest = new QueryEasStockRequest();
easRequest.setOrgno("01.09.14");
easRequest.setWarehouseno(warehouseno);
List<QueryEasStockResponse> easStocks = easApi.queryStock(easRequest);
Set<String> easKeys = new HashSet<>();
addCount++; for (QueryEasStockResponse eas : easStocks) {
String key = eas.getMaterialno() + "_" + eas.getLotnumber();
easKeys.add(key);
if (localMap.containsKey(key)) {
JSONObject local = localMap.get(key);
GroupPlate plate = new GroupPlate();
plate.setGroup_id(local.getString("group_id"));
plate.setQty(new BigDecimal(eas.getQty()));
iMdPbGroupplateService.updateById(plate);
updateCount++;
} else {
GroupPlate plate = new GroupPlate();
plate.setGroup_id(IdUtil.getStringId());
plate.setStoragevehicle_code(struct.getStoragevehicle_code());
plate.setMaterial_code(eas.getMaterialno());
plate.setPcsn(Optional.ofNullable(eas.getLotnumber()).filter(s -> !s.isEmpty()).orElse("1"));
plate.setQty(new BigDecimal(eas.getQty()));
plate.setQty_unit_name(eas.getUnitname());
plate.setStatus(IOSEnum.GROUP_PLATE_STATUS.code("入库"));
plate.setCreate_time(DateUtil.now());
plate.setCreate_id(SecurityUtils.getCurrentUserId());
plate.setCreate_name(SecurityUtils.getCurrentUsername());
MdMeMaterialbase material = iMdMeMaterialbaseService.getOne(
new LambdaQueryWrapper<MdMeMaterialbase>()
.eq(MdMeMaterialbase::getMaterial_code, eas.getMaterialno()));
if (material != null) {
plate.setQty_unit_id(material.getQty_unit_id());
if (plate.getQty_unit_name() == null) {
plate.setQty_unit_name(material.getQty_unit_name());
}
}
iMdPbGroupplateService.save(plate);
addCount++;
}
}
for (JSONObject local : localStocks) {
String key = local.getString("material_code") + "_" + local.getString("pcsn");
if (!easKeys.contains(key)) {
iMdPbGroupplateService.removeById(local.getString("group_id"));
deleteCount++;
}
} }
} }
for (JSONObject local : localStocks) {
String key = local.getString("material_code") + "_" + local.getString("pcsn");
if (!easKeys.contains(key)) {
iMdPbGroupplateService.removeById(local.getString("group_id"));
deleteCount++;
}
}
JSONObject result = new JSONObject(); JSONObject result = new JSONObject();
result.put("updateCount", updateCount); result.put("updateCount", updateCount);
result.put("addCount", addCount); result.put("addCount", addCount);
result.put("deleteCount", deleteCount); result.put("deleteCount", deleteCount);
result.put("easTotal", easStocks.size());
result.put("localTotal", localStocks.size()); result.put("localTotal", localStocks.size());
return result; return result;
} }

View File

@@ -1,11 +1,10 @@
package org.nl.wms.ext_manage.service; package org.nl.wms.ext_manage.service;
import com.alibaba.fastjson.JSONObject;
import org.nl.common.utils.MapOf; import org.nl.common.utils.MapOf;
import org.nl.wms.ext_manage.purchase.service.dto.BillChangeDto; import org.nl.wms.ext_manage.purchase.service.dto.BillChangeDto;
import org.nl.wms.ext_manage.service.dto.ZDInventory; import org.nl.wms.ext_manage.service.dto.ZDInventory;
import org.nl.wms.pm_manage.demand.service.dto.PmDemandDto; import org.nl.wms.pm_manage.demand.service.dto.PmDemandDto;
import org.springframework.http.ResponseEntity;import org.nl.common.base.ResponseData; import org.springframework.http.ResponseEntity;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@@ -48,4 +47,6 @@ public interface WmsToZDWmdService {
* *
*/ */
ResponseEntity<List<ZDInventory>> queryInventory(String materialCode); ResponseEntity<List<ZDInventory>> queryInventory(String materialCode);
List<ZDInventory> queryInventoryByHouseCode(String houseCode);
} }

View File

@@ -7,6 +7,7 @@ import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.nl.common.annotation.Mock; import org.nl.common.annotation.Mock;
import org.nl.common.base.ResponseData;
import org.nl.common.exception.BadRequestException; import org.nl.common.exception.BadRequestException;
import org.nl.config.SpringContextHolder; import org.nl.config.SpringContextHolder;
import org.nl.wms.ext_manage.purchase.service.dto.BillChangeDto; import org.nl.wms.ext_manage.purchase.service.dto.BillChangeDto;
@@ -17,7 +18,7 @@ import org.nl.wms.system_manage.enums.SysParamConstant;
import org.nl.wms.system_manage.service.param.dao.Param; import org.nl.wms.system_manage.service.param.dao.Param;
import org.nl.wms.system_manage.service.param.impl.SysParamServiceImpl; import org.nl.wms.system_manage.service.param.impl.SysParamServiceImpl;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;import org.nl.common.base.ResponseData; import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList; import java.util.ArrayList;
@@ -129,4 +130,40 @@ public class WmsToZDWmdServiceImpl implements WmsToZDWmdService {
throw new BadRequestException("中鼎库存查询异常:" + e.getMessage()); throw new BadRequestException("中鼎库存查询异常:" + e.getMessage());
} }
} }
@Override
public List<ZDInventory> queryInventoryByHouseCode(String houseCode) {
List<ZDInventory> inventorys = new ArrayList<>();
log.info("queryInventoryByHouseCode查询中鼎库存输入参数houseCode={}", houseCode);
Param param = SpringContextHolder.getBean(SysParamServiceImpl.class).findByCode(SysParamConstant.ZD_URL_LOC);
if (param==null){
throw new BadRequestException("查询中鼎库存失败,接口地址未配置");
}
String url = param.getValue();
JSONObject requestBody = new JSONObject();
// if(!StrUtil.isEmptyIfStr(skuCode)){
// requestBody.put("SkuCode", skuCode);
// }
requestBody.put("HouseCode", houseCode);
requestBody.put("HouseCodeLis", new JSONArray());
try {
String resultMsg = HttpRequest.post(url)
.contentType("application/json")
.body(requestBody.toString())
.execute().body();
log.info("queryInventoryByHouseCode查询库存输出参数-------------------" + resultMsg);
JSONObject result = JSONObject.parseObject(resultMsg);
Integer respCode = result.getInteger("respCode");
if (respCode == null || respCode != 0) {
throw new BadRequestException("中鼎库存查询失败:" + result.getString("respMsg"));
}
inventorys = result.getJSONArray("data").toJavaList(ZDInventory.class);
return inventorys;
} catch (BadRequestException e) {
throw e;
} catch (Exception e) {
throw new BadRequestException("中鼎库存查询异常:" + e.getMessage());
}
}
} }

View File

@@ -12,9 +12,7 @@ import org.apache.commons.lang3.StringUtils;
import org.nl.common.domain.query.PageQuery; import org.nl.common.domain.query.PageQuery;
import org.nl.common.exception.BadRequestException; import org.nl.common.exception.BadRequestException;
import org.nl.wms.basedata_manage.service.IMdMeMaterialbaseService; import org.nl.wms.basedata_manage.service.IMdMeMaterialbaseService;
import org.nl.wms.basedata_manage.service.IMdPbMeasureunitService;
import org.nl.wms.basedata_manage.service.dao.MdMeMaterialbase; import org.nl.wms.basedata_manage.service.dao.MdMeMaterialbase;
import org.nl.wms.basedata_manage.service.dao.MdPbMeasureunit;
import org.nl.wms.ext_manage.enums.EXTConstant; import org.nl.wms.ext_manage.enums.EXTConstant;
import org.nl.wms.ext_manage.service.WmsToZDWmdService; import org.nl.wms.ext_manage.service.WmsToZDWmdService;
import org.nl.wms.ext_manage.service.dto.ZDInventory; import org.nl.wms.ext_manage.service.dto.ZDInventory;
@@ -26,22 +24,19 @@ import org.nl.wms.pm_manage.demand.service.dto.PmDemandDto;
import org.nl.wms.pm_manage.demand.service.dto.PmDemandParam; import org.nl.wms.pm_manage.demand.service.dto.PmDemandParam;
import org.nl.wms.pm_manage.demand.service.dto.PmDemandQuery; import org.nl.wms.pm_manage.demand.service.dto.PmDemandQuery;
import org.nl.wms.pm_manage.demand.service.enums.DemandStatus; import org.nl.wms.pm_manage.demand.service.enums.DemandStatus;
import org.nl.wms.sch_manage.enums.StatusEnum;
import org.nl.wms.system_manage.service.param.ISysParamService; import org.nl.wms.system_manage.service.param.ISysParamService;
import org.nl.wms.system_manage.service.param.dao.Param; import org.nl.wms.system_manage.service.param.dao.Param;
import org.nl.wms.system_manage.service.param.impl.SysParamServiceImpl;
import org.nl.wms.warehouse_manage.enums.IOSEnum; import org.nl.wms.warehouse_manage.enums.IOSEnum;
import org.nl.wms.warehouse_manage.inAndOut.service.IOutBillService; import org.nl.wms.warehouse_manage.inAndOut.service.IOutBillService;
import org.nl.wms.warehouse_manage.inventory.IStInventoryService; import org.nl.wms.warehouse_manage.inventory.IStInventoryService;
import org.nl.wms.warehouse_manage.inventory.dto.StInventoryDto; import org.nl.wms.warehouse_manage.inventory.dto.StInventoryDto;
import org.nl.wms.warehouse_manage.inventory.dto.StInventoryQuery; import org.nl.wms.warehouse_manage.inventory.dto.StInventoryQuery;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;import org.nl.common.base.ResponseData; import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.function.Function; import java.util.function.Function;
@@ -164,7 +159,6 @@ public class PmDemandServiceImpl extends ServiceImpl<PmDemandMapper, PmDemand> i
demandDto.setQty(dto.getQty()); demandDto.setQty(dto.getQty());
demandDto.setHouseCode(dto.getStorCode()); demandDto.setHouseCode(dto.getStorCode());
demandDto.setHouseName(dto.getStorName()); demandDto.setHouseName(dto.getStorName());
demandDto.setHouseName(dto.getStorName());
resultList.add(demandDto); resultList.add(demandDto);
} }
} }
@@ -182,7 +176,7 @@ public class PmDemandServiceImpl extends ServiceImpl<PmDemandMapper, PmDemand> i
throw new BadRequestException("分配失败,当前中鼎仓库编码未配置映射"); throw new BadRequestException("分配失败,当前中鼎仓库编码未配置映射");
} }
demandDto.setHouseCode(houseMapping); demandDto.setHouseCode(houseMapping);
demandDto.setHouseName(null); demandDto.setHouseName("五期原材料立库6.002");
resultList.add(demandDto); resultList.add(demandDto);
} }
} }

View File

@@ -134,7 +134,7 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
List<String> permission = new LinkedList<>(); List<String> permission = new LinkedList<>();
// 查看是否为管理员 // 查看是否为管理员
permission.add("admin"); permission.add("admin");
permission.addAll(sysMenuMapper.getPermissionByUserId(userDto.getString("userId"))); permission.addAll(sysMenuMapper.getPermissionByUserId(userDto.getString("user_id")));
return permission; return permission;
} }

View File

@@ -0,0 +1,16 @@
import store from '@/store'
export default {
inserted(el, binding) {
const { value } = binding
const username = store.getters.user && store.getters.user.username
if (value && value instanceof Array && value.length > 0) {
const hasPermission = value.includes(username)
if (!hasPermission) {
el.parentNode && el.parentNode.removeChild(el)
}
} else {
throw new Error(`使用方式: v-has-user="['admin','zhangsan']"`)
}
}
}

View File

@@ -1,7 +1,9 @@
import permission from './permission' import permission from './permission'
import hasUser from './hasUser'
const install = function(Vue) { const install = function(Vue) {
Vue.directive('permission', permission) Vue.directive('permission', permission)
Vue.directive('hasUser', hasUser)
} }
if (window.Vue) { if (window.Vue) {

View File

@@ -74,8 +74,8 @@ export default {
codeUrl: '', codeUrl: '',
cookiePass: '', cookiePass: '',
loginForm: { loginForm: {
username: 'admin', username: '',
password: '123456', password: '',
rememberMe: false, rememberMe: false,
code: '', code: '',
uuid: '' uuid: ''

View File

@@ -548,7 +548,7 @@ export default {
deptTree() { deptTree() {
setTimeout(() => { setTimeout(() => {
crudDept.getDeptTree().then(res => { crudDept.getDeptTree().then(res => {
this.deptDatas = res.data this.deptDatas = res.data.content
}) })
}, 100) }, 100)
}, },
@@ -625,7 +625,7 @@ export default {
// 获取弹窗内角色数据 // 获取弹窗内角色数据
getRoles() { getRoles() {
getAll().then(res => { getAll().then(res => {
this.roles = res this.roles = res.data
}).catch(() => { }).catch(() => {
}) })
}, },

View File

@@ -33,6 +33,7 @@
</el-button> </el-button>
<el-button <el-button
slot="right" slot="right"
v-has-user="['admin']"
class="filter-item" class="filter-item"
type="warning" type="warning"
icon="el-icon-refresh" icon="el-icon-refresh"

View File

@@ -68,6 +68,7 @@
<crudOperation :permission="permission"> <crudOperation :permission="permission">
<el-button <el-button
slot="right" slot="right"
v-has-user="['admin']"
class="filter-item" class="filter-item"
type="warning" type="warning"
icon="el-icon-s-promotion" icon="el-icon-s-promotion"
@@ -202,9 +203,9 @@ export default {
data() { data() {
return { return {
permission: { permission: {
add: ['admin', 'purchasemst:add'], add: ['purchasemst:add'],
edit: ['admin', 'purchasemst:edit'], edit: ['purchasemst:edit'],
del: ['admin', 'purchasemst:del'] del: ['purchasemst:del']
}, },
viewShow: false, viewShow: false,
mstrow: {}, mstrow: {},

View File

@@ -26,8 +26,8 @@
<rrOperation /> <rrOperation />
</el-form> </el-form>
</div> </div>
<crudOperation> <crudOperation :permission="permission">
<el-button slot="right" class="filter-item" type="warning" icon="el-icon-s-promotion" size="mini" :disabled="audit_flag" @click="issueReturnBill">强制回传EAS</el-button> <el-button slot="right" v-has-user="['admin']" class="filter-item" type="warning" icon="el-icon-s-promotion" size="mini" :disabled="audit_flag" @click="issueReturnBill">强制回传EAS</el-button>
<el-button slot="right" class="filter-item" type="success" icon="el-icon-s-promotion" size="mini" :disabled="isPushDisabled()" @click="handleBatchPush">下推出库</el-button> <el-button slot="right" class="filter-item" type="success" icon="el-icon-s-promotion" size="mini" :disabled="isPushDisabled()" @click="handleBatchPush">下推出库</el-button>
</crudOperation> </crudOperation>
<el-table ref="table" v-loading="crud.loading" size="mini" :data="crud.data" highlight-current-row style="width: 100%;" @selection-change="crud.selectionChangeHandler" @current-change="handleCurrentChange" @select="handleSelectionChange"> <el-table ref="table" v-loading="crud.loading" size="mini" :data="crud.data" highlight-current-row style="width: 100%;" @selection-change="crud.selectionChangeHandler" @current-change="handleCurrentChange" @select="handleSelectionChange">
@@ -108,9 +108,9 @@ export default {
data() { data() {
return { return {
permission: { permission: {
add: ['admin', 'purchasemst:add'], add: ['purchasemst:add'],
edit: ['admin', 'purchasemst:edit'], edit: ['purchasemst:edit'],
del: ['admin', 'purchasemst:del'] del: ['purchasemst:del']
}, },
multipleSelection: [], multipleSelection: [],
viewShow: false, viewShow: false,

View File

@@ -27,7 +27,7 @@
</el-form> </el-form>
</div> </div>
<crudOperation :permission="permission"> <crudOperation :permission="permission">
<el-button slot="right" class="filter-item" type="warning" icon="el-icon-s-promotion" size="mini" :disabled="audit_flag" @click="issueReturnBill">下发回传单</el-button> <el-button slot="right" v-has-user="['admin']" class="filter-item" type="warning" icon="el-icon-s-promotion" size="mini" :disabled="audit_flag" @click="issueReturnBill">下发回传单</el-button>
<el-button <el-button
slot="right" slot="right"
class="filter-item" class="filter-item"
@@ -126,9 +126,9 @@ export default {
data() { data() {
return { return {
permission: { permission: {
add: ['admin', 'purchasemst:add'], add: ['purchasemst:add'],
edit: ['admin', 'purchasemst:edit'], edit: ['purchasemst:edit'],
del: ['admin', 'purchasemst:del'] del: ['purchasemst:del']
}, },
viewShow: false, viewShow: false,
mstrow: {}, mstrow: {},

View File

@@ -27,7 +27,7 @@
</el-form> </el-form>
</div> </div>
<crudOperation :permission="permission"> <crudOperation :permission="permission">
<el-button slot="right" class="filter-item" type="warning" icon="el-icon-s-promotion" size="mini" :disabled="audit_flag" @click="issueReturnBill">强制回传EAS</el-button> <el-button slot="right" v-has-user="['admin']" class="filter-item" type="warning" icon="el-icon-s-promotion" size="mini" :disabled="audit_flag" @click="issueReturnBill">强制回传EAS</el-button>
<el-button slot="right" class="filter-item" type="success" icon="el-icon-s-promotion" size="mini" :disabled="isPushDisabled()" @click="handleBatchPush">下推出库</el-button> <el-button slot="right" class="filter-item" type="success" icon="el-icon-s-promotion" size="mini" :disabled="isPushDisabled()" @click="handleBatchPush">下推出库</el-button>
</crudOperation> </crudOperation>
<el-table ref="table" v-loading="crud.loading" size="mini" :data="crud.data" highlight-current-row style="width: 100%;" @selection-change="crud.selectionChangeHandler" @current-change="handleCurrentChange" @select="handleSelectionChange"> <el-table ref="table" v-loading="crud.loading" size="mini" :data="crud.data" highlight-current-row style="width: 100%;" @selection-change="crud.selectionChangeHandler" @current-change="handleCurrentChange" @select="handleSelectionChange">
@@ -107,9 +107,9 @@ export default {
data() { data() {
return { return {
permission: { permission: {
add: ['admin', 'purchasemst:add'], add: ['purchasemst:add'],
edit: ['admin', 'purchasemst:edit'], edit: ['purchasemst:edit'],
del: ['admin', 'purchasemst:del'] del: ['purchasemst:del']
}, },
viewShow: false, viewShow: false,
mstrow: {}, mstrow: {},

View File

@@ -29,6 +29,7 @@
<crudOperation :permission="permission"> <crudOperation :permission="permission">
<el-button <el-button
slot="right" slot="right"
v-has-user="['admin']"
class="filter-item" class="filter-item"
type="warning" type="warning"
icon="el-icon-s-promotion" icon="el-icon-s-promotion"
@@ -49,6 +50,7 @@
</el-button> </el-button>
<el-switch <el-switch
slot="right" slot="right"
v-has-user="['admin']"
v-model="forwardAllZD" v-model="forwardAllZD"
active-color="#13ce66" active-color="#13ce66"
inactive-color="#dcdfe6" inactive-color="#dcdfe6"
@@ -58,7 +60,7 @@
</crudOperation> </crudOperation>
<el-table ref="table" v-loading="crud.loading" size="mini" :data="crud.data" highlight-current-row style="width: 100%;" @selection-change="crud.selectionChangeHandler" @current-change="handleCurrentChange" @select="handleSelectionChange"> <el-table ref="table" v-loading="crud.loading" size="mini" :data="crud.data" highlight-current-row style="width: 100%;" @selection-change="crud.selectionChangeHandler" @current-change="handleCurrentChange" @select="handleSelectionChange">
<el-table-column type="selection" width="55" /> <el-table-column type="selection" width="55" />
<el-table-column v-permission="['admin','purchasemst:del','purchasemst:edit']" label="操作" width="115" align="center" fixed="right"> <el-table-column v-permission="['purchasemst:edit']" label="操作" width="115" align="center" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<udOperation :data="scope.row" :permission="permission" :disabled-edit="canUd(scope.row)" :disabled-dle="canUd(scope.row)" /> <udOperation :data="scope.row" :permission="permission" :disabled-edit="canUd(scope.row)" :disabled-dle="canUd(scope.row)" />
</template> </template>
@@ -167,9 +169,9 @@ export default {
data() { data() {
return { return {
permission: { permission: {
add: ['admin', 'purchasemst:add'], add: ['purchasemst:add'],
edit: ['admin', 'purchasemst:edit'], edit: ['purchasemst:edit'],
del: ['admin', 'purchasemst:del'] del: ['purchasemst:del']
}, },
viewShow: false, viewShow: false,
mstrow: {}, mstrow: {},

View File

@@ -199,9 +199,9 @@ export default {
viewShow: false, viewShow: false,
currentRow: {}, currentRow: {},
permission: { permission: {
add: ['admin', 'receiveOutReturn:add'], add: ['purchasemst:add'],
edit: ['admin', 'receiveOutReturn:edit'], edit: ['purchasemst:edit'],
del: ['admin', 'receiveOutReturn:del'] del: ['purchasemst:del']
}, },
statusOptions: [ statusOptions: [
{ value: '0', label: '待回传' }, { value: '0', label: '待回传' },

View File

@@ -231,7 +231,11 @@ export default {
}, },
data() { data() {
return { return {
permission: {}, permission: {
add: ['purchasemst:add'],
edit: ['purchasemst:edit'],
del: ['purchasemst:del']
},
statusOptions: [ statusOptions: [
{ value: 1, label: '待执行' }, { value: 1, label: '待执行' },
{ value: 2, label: '执行中' }, { value: 2, label: '执行中' },

View File

@@ -60,6 +60,7 @@
<el-button <el-button
slot="right" slot="right"
class="filter-item" class="filter-item"
v-has-user="['admin']"
type="warning" type="warning"
icon="el-icon-refresh" icon="el-icon-refresh"
size="mini" size="mini"