<div class="system-manage"> <div class="menu-header"> <div class="menu-title" translate="ProjectManagement"></div> <div class="menu-log"> <!--<a class="btn btn-not-important" href="javascript:void(0)" ng-click="showOperateLogPop()"> </a>--> <button class="btn btn-not-important" ng-click="showOperateLogPop()"><i class="material-icons">description</i><span translate="log"></span></button> </div> </div> <div class="content-container"> <!-- No Data--> <div id="projectNoData" class="project-manage-no-data" ng-show="gridOptions.noData"> <i class="material-icons">assignment</i> <p translate="CurrentListNoProject"></p> <p> <button type="button" class="btn btn-primary" ng-click="newProject()"><i class="material-icons button-icons">add_circle_outline</i>{{ 'CreateProject' | translate }}</button> </p> </div> <!-- Project Data List --> <div id="projectDataList" ng-show="!gridOptions.noData"> <div class="project-manage-menu"> <div class="project-manage-nav-header-container"> <button class="btn btn-in-grid" ng-click="newProject()"><i class=" material-icons">add_circle_outline</i> <span translate="CreateProject"></span></button> <!--<a href="javascript:void(0)" ng-click="newProject()"><i class="material-icons">add_circle_outline</i> <span translate="CreateProject"></span></a>--> </div> <div class="search-container"> <div class="year"> <select class="form-control" ng-model="queryProjectYear" ng-change="search()" style="height: 35px;"> <option value="">{{ 'Year' | translate }}</option> <option value="{{projectYear.year}}" ng-repeat="projectYear in projectYearList">{{projectYear.year}}</option> </select> </div> <div class="search-text"> <div class="input-group" style="border: 1px solid #CDCDCD; border-radius: 4px; padding-bottom: 1px;"> <input type="text" class="form-control" ng-keyup="search()" style="margin-bottom: -1px; margin-top: 0px; border: 0px; box-shadow: inset 0 0px 0px rgba(0, 0, 0, 0); -webkit-box-shadow: inset 0 0px 0px rgba(0, 0, 0, 0);" ng-model="searchProjectText" placeholder="{{'Search'|translate}}"> <span class="glyphicon glyphicon-search input-group-addon" style="background-color: white; border: 0px; box-shadow: inset 0 0px 0px rgba(0, 0, 0, 0); -webkit-box-shadow: inset 0 0px 0px rgba(0, 0, 0, 0);"></span> </div> </div> </div> </div> <div id="project-manage-grid" ui-grid="gridOptions" ui-grid-selection ui-grid-auto-resize ng-style="getGridHeight()"></div> </div> </div> <div class="modal fade" id="addProjectPop" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> <div class="modal-dialog" style="width:680px;height:200px;" role="document"> <div class="modal-content"> <div class="modal-header"> <div class="modal-title" ng-if="isAdd" translate="CreateProject"></div> <div class="modal-title" ng-if="!isAdd" translate="UpdateProject"></div> </div> <div class="modal-body"> <form class="form-horizontal" id="projectForm"> <div class="level-title"> <span>基本信息</span> </div> <div class="form-group"> <label for="label_project_name" class="col-sm-3 control-label" translate="ProjectName"></label> <div class="col-sm-9"> <input class="form-control" name="name" type="text" id="label_project_name" ng-model="editProjectModel.name" maxlength="40" required> </div> </div> <div class="form-group"> <label for="code" class="col-sm-3 control-label" translate="ProjectCodeLabel"></label> <div class="col-sm-9"> <input class="form-control" name="code" type="text" ng-disabled="!isAdd" id="code" ng-model="editProjectModel.code" required> </div> </div> <div class="form-group"> <label class="col-sm-3 control-label" translate="BelongOrganization"></label> <div class="col-sm-9"> <org-selector selected-org-name="editProjectModel.organizationName" selected-org-id="editProjectModel.organizationID" component-selected-org="editProjectModel.componentSelectedOrg" is-show-all=false name="selectOrganization" required></org-selector> </div> </div> <div class="form-group"> <label for="seletctIndustry" class="col-sm-3 control-label" translate="ProjectIndustry"></label> <div class="col-sm-9"> <select class="form-control" style="width: 80%;" id="selectedIndustry" name="selectedIndustry" ng-model="selectedIndustry" ng-options="projectYear.name for projectYear in projectIndustryList" required></select> </div> </div> <!-- <div class="form-group"> <label for="label_service" class="col-sm-3 control-label" translate="Service"></label> <div class="col-sm-9"> <select class="form-control" ng-disabled="!isAdd" id="serviceTypeList" ng-model="editProjectModel.serviceSelectedList" multiple="multiple" ng-options="service.name for service in serviceList"></select> </div> </div> --> <div class="form-group"> <label for="label_year" class="col-sm-3 control-label" translate="YearTitle"></label> <div class="col-sm-9"> <select class="form-control" ng-disabled="!isAdd" style="width: 136px;" ng-model="editProjectModel.selectedYear" name="selectedYear" ng-options="projectYear.year for projectYear in projectYearList" required></select> </div> </div> <div class="level-title"> <span>高级配置</span> </div> <div class="project-modal-table"> <div ng-repeat="projectModule in projectModuleList track by $index"> <div class="row box-right"> <div class="col-sm-1 box"><span>{{$index + 1}}</span></div> <!--<div class="col-sm-2 box"><span translate="Service"></span></div>--> <div class="col-sm-10 box"> <span translate="Service" class="col-sm-2 service-span"></span> <div class="col-sm-4"> <select class="form-control" ng-change="changeProjectService(projectModule)" style="width: 136px;display: inline-block;" ng-model="projectModule.selectedService" name="selectedService" ng-options="service.name for service in projectModule.serviceList" required></select> </div> <span class="col-sm-2 ReportTemplate-span">{{'ReportTemplate'|translate}}:</span> <div class="col-sm-5"> <select class="form-control" style="display: inline-block;" ng-model="projectModule.selectedModule" ng-options="module.name for module in projectModule.moduleList" name="selectedModule" required></select> </div> </div> <div class="col-sm-1 box"><span ng-if="projectModuleList.length > 1" ng-click="deleteProjectModule(projectModule)"><i class="material-icons button-icons middle delete">delete</i></span></div> </div> </div> <div class="row box-right box-bottom"> <div class="col-sm-1 box"><span ng-click="newProjectModuleRow()"><i class="material-icons button-icons middle add">add_circle_outline</i></span></div> <div class="col-sm-10 box"> </div> <div class="col-sm-1 box"></div> </div> </div> </form> </div> <div class="modal-footer"> <button type="button" class="btn btn-primary" ng-click="saveProject()" translate="Confirm"></button> <button type="button" class="btn btn-third" data-dismiss="modal" translate="Cancel"></button> </div> </div> </div> </div> <!-- 分配用户Pop --> <div class="modal fade" id="assignUserPop" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> <div class="modal-dialog" style="width:610px;height:200px;" role="document"> <div class="modal-content"> <div class="modal-header"> <div class="modal-title" translate="AssignUsers"></div> </div> <div class="modal-body"> <div class="row"> <div class="input-group" style="border: 1px solid #CDCDCD;border-radius:4px;padding-bottom: 1px;"> <input type="text" class="form-control" ng-keyup="search()" style="margin-bottom: -1px;margin-top:0px; border: 0px;box-shadow:inset 0 0px 0px rgba(0, 0, 0, 0);-webkit-box-shadow: inset 0 0px 0px rgba(0, 0, 0, 0);" ng-model="searchText" placeholder="{{'Search'|translate}}"> <span class="glyphicon glyphicon-search input-group-addon" style="background-color: white;border: 0px;box-shadow:inset 0 0px 0px rgba(0, 0, 0, 0);-webkit-box-shadow: inset 0 0px 0px rgba(0, 0, 0, 0);"></span> </div> </div> <div class="row"> <div class="left"> <div class="user-tree-container"> <script type="text/ng-template" id="user-tree-template"> <div ng-class="{true:'tree-item-select',false:''}[user.id=== selectUserSpan.id && !(user.subUsers && user.subUsers.length>0)]" ng-if="searchText === '' || user.userName.toLowerCase().indexOf(searchText.toLowerCase()) > -1"> <div ng-if="user.subUsers && user.subUsers.length>0" class="expander" style="line-height:20px;" ng-class="{true:'tree-item-select',false:''}[user.id===selectUserSpan.id && !(user.subUsers && user.subUsers.length>0)]"> <!--<img src="/Content/images/expand.png" class="tree-expander" ng-click="toggle(this)" ng-class="{hidden:collapsed}" /> <img src="/Content/images/collaspe.png" class="tree-expander" ng-click="toggle(this)" ng-class="{hidden:!collapsed}" />--> <i class="fa fa-plus tree-i" aria-hidden="true" ng-click="toggle(this)" ng-class="{hidden: !collapsed}"></i> <i class="fa fa-minus tree-i" aria-hidden="true" ng-click="toggle(this)" ng-class="{hidden: collapsed}"></i> </div> <!--用户--> <input ng-if="user.subUsers && user.subUsers.length>0" type="checkbox" ng-click="checkUser(user)" ng-checked="user.isSelected"> <span ng-if="user.subUsers && user.subUsers.length>0" ng-bind-template="{{user.userName}}" ng-click="selectUserSpanClick(user);" class="root-node"></span> <!--用户分类--> <input ng-if="!(user.subUsers && user.subUsers.length>0)" type="checkbox" ng-click="checkUser(user)" ng-checked="user.isSelected"> <span ng-if="!(user.subUsers && user.subUsers.length>0)" ng-bind-template="{{user.userName}}" ng-click="selectUserSpanClick(user);" class="sub-node" ng-class="{true:'tree-item-select',false:''}[user.id===selectUserSpan.id]"></span> </div> <ol ui-tree-nodes="" ng-model="user.subUsers" ng-class="{hidden:collapsed}"> <li ng-repeat="user in user.subUsers" ui-tree-node ng-include="'user-tree-template'"> </li> </ol> </script> <div class="user-tree"> <div ui-tree id="tree-root" data-drag-enabled="false"> <ol ui-tree-nodes ng-model="userList"> <li ng-repeat="user in userList" ui-tree-node ng-include="'user-tree-template'"> </li> </ol> </div> </div> </div> </div> <div class="right"> <div class="role-tree-container" style="display:block;"> <script type="text/ng-template" id="role_tree_template"> <div ng-if="role.subRoles && role.subRoles.length > 0" class="expander-container"> <!--<img src="/Content/images/expand.png" class="tree-expander" ng-click="toggle(this)" ng-class="{hidden: collapsed}" /> <img src="/Content/images/collaspe.png" class="tree-expander" ng-click="toggle(this)" ng-class="{hidden: !collapsed}" />--> <i class="fa fa-plus tree-i" aria-hidden="true" ng-click="toggle(this)" ng-class="{hidden: !collapsed}"></i> <i class="fa fa-minus tree-i" aria-hidden="true" ng-click="toggle(this)" ng-class="{hidden: collapsed}"></i> </div> <!-- 黄色选中颜色注释掉 ng-class="{true:'tree-item-selected',false:''}[role.isChecked===true]" --> <div ui-tree-handle> <!-- ng-if="role.id !== '00000000-0000-0000-0000-000000000000'" --> <input type="checkbox" ng-checked="role.isChecked" ng-click="toggleRoleSub(role)"> <!--ng-click="toggle(this) ng-class="{true:'tree-item-selected',false:''}[role.isChecked===true]" --> <div class="tree-role-item" ng-bind-template="{{role.name}}" ng-click="toggleRoleSub(role)"></div> </div> <ul ui-tree-nodes="" ng-model="role.subRoles" ng-class="{hidden: collapsed}"> <li ng-repeat="role in role.subRoles" ui-tree-node ng-include="'role_tree_template'"> </li> </ul> </script> <div class="role-tree"> <div ui-tree data-drag-enabled="false" style="border:0;"> <ul ui-tree-nodes="" ng-model="roleTreeData"> <li ng-repeat="role in roleTreeData" ui-tree-node ng-include="'role_tree_template'" collapsed="false"> </li> </ul> </div> </div> </div> </div> </div> </div> <div class="modal-footer"> <button type="button" class="btn btn-primary" ng-click="setProjectUserRole()" translate="Confirm"></button> <button type="button" class="btn btn-third" data-dismiss="modal" translate="Cancel"></button> </div> </div> </div> </div> <div class="modal fade" id="deleteConfirmPop" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> <div class="modal-dialog" style="width:610px;height:200px;" role="document"> <div class="modal-content"> <div class="modal-header"> <div class="modal-title" translate="DeleteConfirm"></div> </div> <div class="modal-body"> <div ng-if="!isMore"><i class="material-icons confirm-warning">warning</i> {{ 'ConfirmedDelete' | translate }}"{{toDeleteName}}",""{{toDeleteCode}}"?</div> <div ng-if="isMore"><i class="material-icons confirm-warning">warning</i> {{ 'ConfirmDeleteAll' | translate }} </div> </div> <div class="modal-footer"> <button ng-if="!isMore" type="button" class="btn btn-primary" ng-click="deleteProject()" translate="Confirm"></button> <button ng-if="isMore" type="button" class="btn btn-primary" ng-click="deleteProjects()" translate="Confirm"></button> <button type="button" class="btn btn-default" data-dismiss="modal" translate="Cancel"></button> </div> </div> </div> </div> <operate-log is-show="isShowLog"></operate-log> </div>