Beispiel #1
0
        public void setParentDepartment_validObjToSelfDescedent_willThrow()
        {
            DepartmentHelper o          = new DepartmentHelper(db);
            Department       department = o.createObject();

            department.name = "Integration_Test_XXXYYYZZZ";
            BizEntitySchema bizEntitySchema = db.bizEntitySchemas.FirstOrDefault();

            if (bizEntitySchema == null)
            {
                Assert.Ignore("Not found BizEntitySchema object");
            }
            Department departmentParent = bizEntitySchema.getRootDepartments(db).FirstOrDefault();

            if (departmentParent == null)
            {
                Assert.Ignore("Not found departmentParent object");
            }
            o.saveCreatedObject(bizEntitySchema, department, departmentParent);
            Department departmentLastLevel = o.createObject();

            departmentLastLevel.name = "Integration_Test_XXXYYYZZZ_LastLevel";
            o.saveCreatedObject(bizEntitySchema, departmentLastLevel, department);

            Assert.Throws <DataLogicException>(() =>
                                               o.setParentDepartment(departmentParent.departmentId, departmentLastLevel,
                                                                     bizEntitySchema.bizEntitySchemaId),
                                               "设置的祖先不能为自己的子孙节点!");
        }
Beispiel #2
0
        public void setParentDepartment_validObjToValidParent_willCreateDepartmentParentChildRelation()
        {
            DepartmentHelper o          = new DepartmentHelper(db);
            Department       department = o.createObject();

            department.name = "Integration_Test_XXXYYYZZZ";
            BizEntitySchema bizEntitySchema = db.bizEntitySchemas.FirstOrDefault();

            if (bizEntitySchema == null)
            {
                Assert.Ignore("Not found BizEntitySchema object");
            }
            Department departmentParent = bizEntitySchema.getRootDepartments(db).FirstOrDefault();

            if (departmentParent == null)
            {
                Assert.Ignore("Not found departmentParent object");
            }
            o.saveCreatedObject(bizEntitySchema, department, null);

            o.setParentDepartment(department.departmentId, departmentParent, bizEntitySchema.bizEntitySchemaId);

            var dpcrs = db.departmentParentChildRelations.Where(dpcr =>
                                                                dpcr.assistBizEntitySchemaId == bizEntitySchema.bizEntitySchemaId &&
                                                                dpcr.departmentIdChild == department.departmentId);

            Assert.AreEqual(1, dpcrs.Count());
            Assert.IsNotNull(dpcrs.FirstOrDefault().departmentParent);
        }
Beispiel #3
0
        public IHttpActionResult SetParent(int id, int departmentIdParent, int bizEntitySchemaId)
        {
            var bizDepartmentParent = db.departments.Find(departmentIdParent);

            DepartmentHelper departmentHelper = new DepartmentHelper(db);

            try
            {
                departmentHelper.setParentDepartment(
                    id, bizDepartmentParent, bizEntitySchemaId);
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }