Exemple #1
0
        /// <summary>
        /// 递归获取子集栏目权限
        /// </summary>
        /// <param name="powerModuleId"></param>
        /// <param name="yunEntities"></param>
        /// <returns></returns>
        public List <ModulePower> GetChildrenModulePower(int powerModuleId, IYunEntities yunEntities)
        {
            const int vaild           = (int)DataState.Able;
            const int menu            = (int)PowerState.Able;
            var       modulePowerSons =
                yunEntities.VW_Power.Where(
                    u =>
                    u.y_parentID == powerModuleId && u.y_roleID == YdAdminRoleId && u.y_vaild == vaild &&
                    u.y_menu == menu).OrderByDescending(u => u.y_sort);
            var children = new List <ModulePower>();

            foreach (var modulePowerSon in modulePowerSons)
            {
                var modulePowerChildren = new ModulePower
                {
                    id           = modulePowerSon.id,
                    y_url        = modulePowerSon.y_url,
                    y_sort       = modulePowerSon.y_sort,
                    y_parentID   = modulePowerSon.y_parentID,
                    y_level      = modulePowerSon.y_level,
                    y_vaild      = modulePowerSon.y_vaild,
                    y_roleID     = modulePowerSon.y_roleID,
                    y_moduleID   = modulePowerSon.y_moduleID,
                    y_menu       = modulePowerSon.y_menu,
                    y_insert     = modulePowerSon.y_insert,
                    y_delete     = modulePowerSon.y_delete,
                    y_update     = modulePowerSon.y_update,
                    y_select     = modulePowerSon.y_select,
                    y_roleName   = modulePowerSon.y_roleName,
                    y_moudleName = modulePowerSon.y_moudleName,
                };
                children.Add(modulePowerChildren);
            }
            return(children);
        }
Exemple #2
0
        public void module_powerTest()
        {
            var m = new ModulePower();

            Assert.AreEqual("4", m.module_power("4", "3"));
            Assert.AreEqual("-5", m.module_power("-7", "2"));
            Assert.AreEqual("80", m.module_power("80", "1111"));
            Assert.AreEqual("-1", m.module_power("-999900987", "1"));
            Assert.AreEqual("0", m.module_power("-2", "1"));
            Assert.AreEqual("1", m.module_power("1", "6666666666666"));
            Assert.AreEqual("35", m.module_power("35", "2015"));
            Assert.AreEqual("1", m.module_power("35", "2016"));
            Assert.AreEqual("-98763", m.module_power("-98765", "11102"));
            Assert.AreEqual("-1", m.module_power("-98765", "11111"));
        }
    // Модуль питания
    public ModuleBoard(string GetIndificator)
    {
        if (GetIndificator != "")
        {
            Console.WriteLine("Устройство с индификатором " + GetIndificator);
            string[] TempStringIndificator = GetIndificator.Split('-');
            for (int shag = 0; shag <= 7; shag++)
            {
                MACDevices[shag] = System.Convert.ToByte(TempStringIndificator[shag]);
            }
        }
        else
        {
            new System.Random(System.DateTime.Now.Millisecond).NextBytes(MACDevices);
            // Генерация случайного индификатора платы
        }
        MemoryDevies = new ModuleMemory(MACDevices);
        // Генерация модуля памяти, попытка открыть конфигурацию
        // с жесткого диска по названию индификатора
        this.CPU = new ModuleCPU(MACDevices);
        // Генерация модуля Процессора, передается уникальный индификатор
        this.Power = new ModulePower();
        // Генерация модуля питания
        RS485 = new ModuleRS485();
        // AdressRS, NameDevices, VersionProshivki, 9600

        // Генерация модуля Интерфейса.
        // Конструктор нужно разобрать, кофигурация модуля интерфейса происходит
        // через процессор

        this.MemoryDevies.WriteCPU += CPU.EventMemory;
        CPU.WriteMemory            += this.MemoryDevies.ReadCPU;

        Power.WriteInfoCPU += CPU.EventPower;
        // Приявяска модуля питания к Процессору
        CPU.WritePower += Power.ReadCPU;
        // Привязка модуля процессора к модуля питания

        RS485.CPUWriteDataRS += CPU.EventRS485;
        CPU.WriteRS485       += RS485.CPUReadDataRS;
    }