Former-commit-id: 6e5845602c3c6660856c68660af862dd54b020e3
TangShanKaiPing
wanggang 6 years ago
parent 63e56000aa
commit adca295259

@ -45,6 +45,7 @@ namespace UserCenter.Controllers
var model = this._nodeRepo.ReadOnlyTable()
.Select(o => new
{
o.Id,
o.Name,
o.Number,
o.Image,

@ -36,6 +36,7 @@ namespace UserCenter.Controllers
.OrderBy(o => o.DisplayOrder)
.Select(o => new
{
o.Id,
o.Name,
o.Number,
o.Image,

@ -19,7 +19,17 @@ connection.on("ServerToClient", function (method, json, to, from) {
console.log(json);
var model = JSON.parse(json);
if (method === 'NodeEntityUpdated') {
store.commit('setNode', model);
store.commit('updateNode', model);
}
//else if (method === 'NodeEntityInserted') {}
//else if (method === 'NodeEntityDeleted') {}
else if (method === 'DeviceEntityInserted') {
store.commit('insertDevice', model);
}
else if (method === 'DeviceEntityUpdated') {
store.commit('updateDevice', model);
}
else if (method === 'DeviceEntityDeleted') {
store.commit('deleteDevice', model);
}
});

@ -4,8 +4,9 @@ const store = new Vuex.Store({
accessToken: localStorage.getItem("accessToken"),
refreshToken: localStorage.getItem("refreshToken"),
user: null,
products: null,
nodes: null,
products: [],
nodes: [],
devices:[],
},
mutations: {
setToken(state, data) {
@ -23,14 +24,40 @@ const store = new Vuex.Store({
setUser(state, user) {
state.user = user;
},
setProducts(state, products) {
state.products = products;
setProducts(state, model) {
state.products = model;
},
setNodes(state, nodes) {
state.nodes = nodes;
setNodes(state, model) {
state.nodes = model;
},
setNode(state, node) {
findByNumberCopy(state.nodes, node);
updateNode(state, model) {
updateByNumber(state.nodes, model);
},
insertDevice(state, model) {
updateByNumber(state.devices, model);
var node = Enumerable.from(state.nodes).where(function (o) { return o.id === model.nodeId; }).firstOrDefault();
if (node) {
node.count += 1;
}
var product = Enumerable.from(state.products).where(function (o) { return o.id === model.nodeId; }).firstOrDefault();
if (product) {
product.count += 1;
}
},
updateDevice(state, model) {
updateByNumber(state.devices, model);
},
deleteDevice(state, model) {
deleteByNumber(state.devices, model);
var node = Enumerable.from(state.nodes).where(function (o) { return o.id === model.nodeId; }).firstOrDefault();
if (node) {
node.count -= 1;
}
var product = Enumerable.from(state.products).where(function (o) { return o.id === model.productId; }).firstOrDefault();
if (product) {
product.count -= 1;
}
}
},
})

@ -5,9 +5,26 @@
}
}
}
function findByNumberCopy(list, from) {
function updateByNumber(list, from) {
var result = false;
var to = Enumerable.from(list).where(function (o) { return o.number === from.number; }).firstOrDefault();
if (to) {
copy(from, to);
}
else {
list.push(from);
result = true;
}
return result;
}
function deleteByNumber(list, item) {
var result = false;
for (var i = 0; i < list.length; i++) {
if (list[i].number == item.number) {
list.splice(i, 1);
result = true;
break;
}
}
return result;
}
Loading…
Cancel
Save