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), "设置的祖先不能为自己的子孙节点!"); }
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); }
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)); }