ofbiz实战——实验室预约系统共用配置文件

来源:互联网 发布:sha256算法详细 编辑:程序博客网 时间:2024/04/29 03:40

项目中有些配置文件是其他功能多开共用的配置文件,如:controller.xml,services.xml,secas.xml,eecas.xml,entitymodel.xml,entitymodel_view.xml。所以统一在这里整理记录了。

返回导航页

controller.xml

<?xml version="1.0" encoding="UTF-8"?><site-conf xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"        xmlns="http://ofbiz.apache.org/Site-Conf" xsi:schemaLocation="http://ofbiz.apache.org/Site-Conf http://ofbiz.apache.org/dtds/site-conf.xsd">    <include location="component://common/webcommon/WEB-INF/common-controller.xml"/>    <include location="component://common/webcommon/WEB-INF/portal-controller.xml"/><handler name="groovy" type="request" class="org.apache.ofbiz.webapp.event.GroovyEventHandler"/><handler name="java" type="request" class="org.apache.ofbiz.webapp.event.JavaEventHandler"/>    <description>Booking Component Site Configuration File</description>    <!-- Request Mappings -->    <request-map uri="main"><security https="true" auth="true"/><response name="success" type="view" value="main"/></request-map><!-- ================ Student Requests ================= -->    <request-map uri="FindStudent">        <security https="true" auth="true"/>        <response name="success" type="view" value="FindStudent"/>    </request-map>    <request-map uri="EditStudent">        <security https="true" auth="true"/>        <response name="success" type="view" value="EditStudent"/>    </request-map><request-map uri="ImportStudentsPage">        <security https="true" auth="true"/>        <response name="success" type="view" value="ImportStudentsPage"/>    </request-map><request-map uri="ImportStudents">        <security https="true" auth="true"/><event type="groovy" path="component://booking/groovyScripts/UserLogin.groovy" invoke="importStudents"/>        <response name="success" type="view" value="FindStudent"/><response name="error" type="view" value="ImportStudentsPage"/>    </request-map><request-map uri="downloadTemplet">  <security   https="true"/>  <event type="java" path="org.apache.ofbiz.booking.download.DownloadEvents" invoke="download"/><response name="success" type="none"/></request-map>     <request-map uri="createStudent">        <security https="true" auth="true"/>        <event type="service"  invoke="createStudent"/>        <response name="success" type="view" value="EditStudent"/>        <response name="error" type="view" value="EditStudent"/>    </request-map>    <request-map uri="updateStudent">        <security https="true" auth="true"/>        <event type="service"  invoke="updateStudent"/>        <response name="success" type="view" value="EditStudent"/>        <response name="error" type="view" value="EditStudent"/>    </request-map><request-map uri="deleteStudent">  <security auth="true"  https="true"/>  <event type="service" invoke="deleteStudent" />  <response name="success" type="request-redirect-noparam" value="FindStudent"/>  </request-map> <request-map uri="LookupStudent"><security auth="true" https="true"/><response name="success" type="view" value="LookupStudent"/></request-map><!-- ================ Teacher Requests ================= -->    <request-map uri="FindTeacher">        <security https="true" auth="true"/>        <response name="success" type="view" value="FindTeacher"/>    </request-map>    <request-map uri="EditTeacher">        <security https="true" auth="true"/>        <response name="success" type="view" value="EditTeacher"/>    </request-map>    <request-map uri="createTeacher">        <security https="true" auth="true"/>        <event type="service"  invoke="createTeacher"/>        <response name="success" type="view" value="EditTeacher"/>        <response name="error" type="view" value="EditTeacher"/>    </request-map>    <request-map uri="updateTeacher">        <security https="true" auth="true"/>        <event type="service"  invoke="updateTeacher"/>        <response name="success" type="view" value="EditTeacher"/>        <response name="error" type="view" value="EditTeacher"/>    </request-map><request-map uri="deleteTeacher">  <security auth="true"  https="true"/>  <event type="service" invoke="deleteTeacher" />  <response name="success" type="request-redirect-noparam" value="FindTeacher"/>  </request-map> <request-map uri="LookupTeacher"><security auth="true" https="true"/><response name="success" type="view" value="LookupTeacher"/></request-map><!-- ================ Admin Requests ================= -->    <request-map uri="FindAdmin">        <security https="true" auth="true"/>        <response name="success" type="view" value="FindAdmin"/>    </request-map>    <request-map uri="EditAdmin">        <security https="true" auth="true"/>        <response name="success" type="view" value="EditAdmin"/>    </request-map>    <request-map uri="createAdmin">        <security https="true" auth="true"/>        <event type="service"  invoke="createAdmin"/>        <response name="success" type="view" value="EditAdmin"/>        <response name="error" type="view" value="EditAdmin"/>    </request-map>    <request-map uri="updateAdmin">        <security https="true" auth="true"/>        <event type="service"  invoke="updateAdmin"/>        <response name="success" type="view" value="EditAdmin"/>        <response name="error" type="view" value="EditAdmin"/>    </request-map><request-map uri="deleteAdmin">  <security auth="true"  https="true"/>  <event type="service" invoke="deleteAdmin" />  <response name="success" type="request-redirect-noparam" value="FindAdmin"/>  </request-map> <!-- ================ Term Requests ================= -->    <request-map uri="FindTerm">        <security https="true" auth="true"/>        <response name="success" type="view" value="FindTerm"/>    </request-map>    <request-map uri="EditTerm">        <security https="true" auth="true"/>        <response name="success" type="view" value="EditTerm"/>    </request-map>    <request-map uri="createTerm">        <security https="true" auth="true"/>        <event type="service"  invoke="createTerm"/>        <response name="success" type="view" value="EditTerm"/>        <response name="error" type="view" value="EditTerm"/>    </request-map>    <request-map uri="updateTerm">        <security https="true" auth="true"/>        <event type="service"  invoke="updateTerm"/>        <response name="success" type="view" value="EditTerm"/>        <response name="error" type="view" value="EditTerm"/>    </request-map><request-map uri="deleteTerm">  <security auth="true"  https="true"/>  <event type="service" invoke="deleteTerm" />  <response name="success" type="request-redirect-noparam" value="FindTerm"/>  </request-map> <request-map uri="LookupTerm"><security auth="true" https="true"/><response name="success" type="view" value="LookupTerm"/></request-map><!-- ================ Course Requests ================= -->    <request-map uri="FindCourse">        <security https="true" auth="true"/>        <response name="success" type="view" value="FindCourse"/>    </request-map>    <request-map uri="EditCourse">        <security https="true" auth="true"/>        <response name="success" type="view" value="EditCourse"/>    </request-map>    <request-map uri="createCourse">        <security https="true" auth="true"/>        <event type="service"  invoke="createCourse"/>        <response name="success" type="view" value="EditCourse"/>        <response name="error" type="view" value="EditCourse"/>    </request-map>    <request-map uri="updateCourse">        <security https="true" auth="true"/>        <event type="service"  invoke="updateCourse"/>        <response name="success" type="view" value="EditCourse"/>        <response name="error" type="view" value="EditCourse"/>    </request-map><request-map uri="deleteCourse">  <security auth="true"  https="true"/>  <event type="service" invoke="deleteCourse" />  <response name="success" type="request-redirect-noparam" value="FindCourse"/>  </request-map> <request-map uri="LookupCourse"><security auth="true" https="true"/><response name="success" type="view" value="LookupCourse"/></request-map><!-- ================ LabProject Requests ================= -->    <request-map uri="FindLabProject">        <security https="true" auth="true"/>        <response name="success" type="view" value="FindLabProject"/>    </request-map>    <request-map uri="EditLabProject">        <security https="true" auth="true"/>        <response name="success" type="view" value="EditLabProject"/>    </request-map>    <request-map uri="createLabProject">        <security https="true" auth="true"/>        <event type="service"  invoke="createLabProject"/>        <response name="success" type="view" value="EditLabProject"/>        <response name="error" type="view" value="EditLabProject"/>    </request-map>    <request-map uri="updateLabProject">        <security https="true" auth="true"/>        <event type="service"  invoke="updateLabProject"/>        <response name="success" type="view" value="EditLabProject"/>        <response name="error" type="view" value="EditLabProject"/>    </request-map><request-map uri="deleteLabProject">  <security auth="true"  https="true"/>  <event type="service" invoke="deleteLabProject" />  <response name="success" type="request-redirect-noparam" value="FindLabProject"/>  </request-map> <request-map uri="LookupLabProject"><security auth="true" https="true"/><response name="success" type="view" value="LookupLabProject"/></request-map><!-- ================ LabProjectBatch Requests ================= -->    <request-map uri="FindLabProjectBatch">        <security https="true" auth="true"/>        <response name="success" type="view" value="FindLabProjectBatch"/>    </request-map>    <request-map uri="EditLabProjectBatch">        <security https="true" auth="true"/>        <response name="success" type="view" value="EditLabProjectBatch"/>    </request-map>    <request-map uri="createLabProjectBatch">        <security https="true" auth="true"/>        <event type="service"  invoke="createLabProjectBatch"/>        <response name="success" type="view" value="EditLabProjectBatch"/>        <response name="error" type="view" value="EditLabProjectBatch"/>    </request-map>    <request-map uri="updateLabProjectBatch">        <security https="true" auth="true"/>        <event type="service"  invoke="updateLabProjectBatch"/>        <response name="success" type="view" value="EditLabProjectBatch"/>        <response name="error" type="view" value="EditLabProjectBatch"/>    </request-map><request-map uri="deleteLabProjectBatch">  <security auth="true"  https="true"/>  <event type="service" invoke="deleteLabProjectBatch" />  <response name="success" type="request-redirect-noparam" value="FindLabProjectBatch"/>  </request-map> <request-map uri="LookupLabProjectBatch"><security auth="true" https="true"/><response name="success" type="view" value="LookupLabProjectBatch"/></request-map><!-- ================ StuBatch Requests ================= -->    <request-map uri="FindStuBatch">        <security https="true" auth="true"/>        <response name="success" type="view" value="FindStuBatch"/>    </request-map>    <request-map uri="EditStuBatch">        <security https="true" auth="true"/>        <response name="success" type="view" value="EditStuBatch"/>    </request-map>    <request-map uri="createStuBatch">        <security https="true" auth="true"/>        <event type="service"  invoke="createStuBatch"/>        <response name="success" type="view" value="EditStuBatch"/>        <response name="error" type="view" value="EditStuBatch"/>    </request-map>    <request-map uri="updateStuBatch">        <security https="true" auth="true"/>        <event type="service"  invoke="updateStuBatch"/>        <response name="success" type="request-redirect" value="FindStuBatch"/>        <response name="error" type="request-redirect" value="FindStuBatch"/>    </request-map><request-map uri="deleteStuBatch">  <security auth="true"  https="true"/>  <event type="service" invoke="deleteStuBatch" />  <response name="success" type="request-redirect-noparam" value="FindBookingInReview"/>  </request-map> <request-map uri="AuditingStuBatch">  <security auth="true"  https="true"/>  <response name="success" type="view" value="AuditingStuBatch"/></request-map> <request-map uri="FindBatchForStudent">  <security auth="true"  https="true"/>  <response name="success" type="view" value="FindBatchForStudent"/></request-map> <request-map uri="BookingBatch">        <security https="true" auth="true"/>        <!--<event type="groovy"  path="component://booking/groovyScripts/BookingBatch.groovy" invoke="BookingBatch" />--><event type="service"  invoke="bookingBatchGroovy"/>        <response name="success" type="request-redirect-noparam" value="FindBatchForStudent"/>      </request-map><request-map uri="FindBookingInReview">        <security https="true" auth="true"/>        <response name="success" type="view" value="FindBookingInReview"/>    </request-map><request-map uri="FindMyBooking">        <security https="true" auth="true"/>        <response name="success" type="view" value="FindMyBooking"/>    </request-map><request-map uri="EditAuditingResult">        <security https="true" auth="true"/>        <response name="success" type="view" value="EditAuditingResult"/>    </request-map><request-map uri="AuditingStuBatchList">        <security https="true" auth="true"/>        <!--<event type="groovy"  path="component://booking/groovyScripts/BookingBatch.groovy" invoke="BookingBatch" />--><event type="service"  invoke="auditingStuBatchList"/>        <response name="success" type="request-redirect-noparam" value="FindStuBatch"/>      </request-map><request-map uri="BookingAttendanceManange">  <security auth="true"  https="true"/>  <response name="success" type="view" value="BookingAttendanceManange"/></request-map> <request-map uri="EditBookingAttendance">  <security auth="true"  https="true"/>  <event type="service"  invoke="editBookingAttendance"/><response name="success" type="request-redirect-noparam" value="BookingAttendanceManange"/></request-map> <request-map uri="resetPasswordForStudent">  <security auth="true"  https="true"/>  <event type="service"  invoke="resetPassword"/><response name="success" type="request-redirect-noparam" value="FindStudent"/></request-map> <request-map uri="resetPasswordForAdmin">  <security auth="true"  https="true"/>  <event type="service"  invoke="resetPassword"/><response name="success" type="request-redirect-noparam" value="FindStudent"/></request-map>     <!-- View Mappings --><view-map name="main" type="screen" page="component://booking/widget/booking/BookingScreens.xml#main"/>    <view-map name="FindStudent" type="screen" page="component://booking/widget/booking/StudentScreens.xml#FindStudent"/><view-map name="EditStudent" type="screen" page="component://booking/widget/booking/StudentScreens.xml#EditStudent"/><view-map name="LookupStudent" type="screen" page="component://booking/widget/booking/StudentScreens.xml#LookupStudent"/><view-map name="ImportStudentsPage" type="screen" page="component://booking/widget/booking/StudentScreens.xml#ImportStudentsPage"/><view-map name="FindTeacher" type="screen" page="component://booking/widget/booking/TeacherScreens.xml#FindTeacher"/><view-map name="EditTeacher" type="screen" page="component://booking/widget/booking/TeacherScreens.xml#EditTeacher"/><view-map name="LookupTeacher" type="screen" page="component://booking/widget/booking/TeacherScreens.xml#LookupTeacher"/><view-map name="FindAdmin" type="screen" page="component://booking/widget/booking/AdminScreens.xml#FindAdmin"/><view-map name="EditAdmin" type="screen" page="component://booking/widget/booking/AdminScreens.xml#EditAdmin"/><view-map name="FindTerm" type="screen" page="component://booking/widget/booking/TermScreens.xml#FindTerm"/><view-map name="EditTerm" type="screen" page="component://booking/widget/booking/TermScreens.xml#EditTerm"/><view-map name="LookupTerm" type="screen" page="component://booking/widget/booking/TermScreens.xml#LookupTerm"/><view-map name="FindCourse" type="screen" page="component://booking/widget/booking/CourseScreens.xml#FindCourse"/><view-map name="EditCourse" type="screen" page="component://booking/widget/booking/CourseScreens.xml#EditCourse"/><view-map name="LookupCourse" type="screen" page="component://booking/widget/booking/CourseScreens.xml#LookupCourse"/><view-map name="FindLabProject" type="screen" page="component://booking/widget/booking/LabProjectScreens.xml#FindLabProject"/><view-map name="EditLabProject" type="screen" page="component://booking/widget/booking/LabProjectScreens.xml#EditLabProject"/><view-map name="LookupLabProject" type="screen" page="component://booking/widget/booking/LabProjectScreens.xml#LookupLabProject"/><view-map name="FindLabProjectBatch" type="screen" page="component://booking/widget/booking/LabProjectBatchScreens.xml#FindLabProjectBatch"/><view-map name="EditLabProjectBatch" type="screen" page="component://booking/widget/booking/LabProjectBatchScreens.xml#EditLabProjectBatch"/><view-map name="LookupLabProjectBatch" type="screen" page="component://booking/widget/booking/LabProjectBatchScreens.xml#LookupLabProjectBatch"/><view-map name="FindStuBatch" type="screen" page="component://booking/widget/booking/StuBatchScreens.xml#FindStuBatch"/><view-map name="EditStuBatch" type="screen" page="component://booking/widget/booking/StuBatchScreens.xml#EditStuBatch"/><view-map name="AuditingStuBatch" type="screen" page="component://booking/widget/booking/StuBatchScreens.xml#AuditingStuBatch"/><view-map name="FindBatchForStudent" type="screen" page="component://booking/widget/booking/StuBatchScreens.xml#FindBatchForStudent"/><view-map name="FindBookingInReview" type="screen" page="component://booking/widget/booking/StuBatchScreens.xml#FindBookingInReview"/><view-map name="FindMyBooking" type="screen" page="component://booking/widget/booking/StuBatchScreens.xml#FindMyBooking"/><view-map name="EditAuditingResult" type="screen" page="component://booking/widget/booking/StuBatchScreens.xml#EditAuditingResult"/><view-map name="BookingAttendanceManange" type="screen" page="component://booking/widget/booking/StuBatchScreens.xml#BookingAttendanceManange"/></site-conf>

services.xml

<?xml version="1.0" encoding="UTF-8" ?><services xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/services.xsd">    <description>Booking Services</description>    <vendor>OFBiz</vendor>    <version>1.0</version><!--Student--><service name="createStudent" default-entity-name="Student" engine="entity-auto"  invoke="create" auth="true">  <description>Create a Student</description>  <auto-attributes include="pk" mode="INOUT" optional="true"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/> </service>  <service name="updateStudent" default-entity-name="Student" engine="entity-auto" invoke="update" auth="true">  <description>Update a Student</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/>  </service>  <service name="deleteStudent" default-entity-name="Student" engine="entity-auto"  invoke="delete" auth="true">  <description>Delete a Student</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  </service>  <!--Teacher--><service name="createTeacher" default-entity-name="Teacher" engine="entity-auto"  invoke="create" auth="true">  <description>Create a Teacher</description>  <auto-attributes include="pk" mode="INOUT" optional="true"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/> </service>  <service name="updateTeacher" default-entity-name="Teacher" engine="entity-auto" invoke="update" auth="true">  <description>Update a Teacher</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/>  </service>  <service name="deleteTeacher" default-entity-name="Teacher" engine="entity-auto"  invoke="delete" auth="true">  <description>Delete a Teacher</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  </service>  <!--Admin--><service name="createAdmin" default-entity-name="Admin" engine="entity-auto"  invoke="create" auth="true">  <description>Create a Admin</description>  <auto-attributes include="pk" mode="INOUT" optional="true"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/> </service>  <service name="updateAdmin" default-entity-name="Admin" engine="entity-auto" invoke="update" auth="true">  <description>Update a Admin</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/>  </service>  <service name="deleteAdmin" default-entity-name="Admin" engine="entity-auto"  invoke="delete" auth="true">  <description>Delete a Admin</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  </service>  <!--Term--><service name="createTerm" default-entity-name="Term" engine="entity-auto"  invoke="create" auth="true">  <description>Create a Term</description>  <auto-attributes include="pk" mode="INOUT" optional="true"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/> <override name="beginTime" optional="false"/></service>  <service name="updateTerm" default-entity-name="Term" engine="entity-auto" invoke="update" auth="true">  <description>Update a Term</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/>  <!--<override name="endTime" optional="false"/>--></service>  <service name="deleteTerm" default-entity-name="Term" engine="entity-auto"  invoke="delete" auth="true">  <description>Delete a Term</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  </service>  <!--Course--><service name="createCourse" default-entity-name="Course" engine="entity-auto"  invoke="create" auth="true">  <description>Create a Course</description>  <auto-attributes include="pk" mode="INOUT" optional="true"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/> </service>  <service name="updateCourse" default-entity-name="Course" engine="entity-auto" invoke="update" auth="true">  <description>Update a Course</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/>  </service>  <service name="deleteCourse" default-entity-name="Course" engine="entity-auto"  invoke="delete" auth="true">  <description>Delete a Course</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  </service>  <!--LabProject--><service name="createLabProject" default-entity-name="LabProject" engine="entity-auto"  invoke="create" auth="true">  <description>Create a LabProject</description>  <auto-attributes include="pk" mode="INOUT" optional="true"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/> </service>  <service name="updateLabProject" default-entity-name="LabProject" engine="entity-auto" invoke="update" auth="true">  <description>Update a LabProject</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/>  </service>  <service name="deleteLabProject" default-entity-name="LabProject" engine="entity-auto"  invoke="delete" auth="true">  <description>Delete a LabProject</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  </service>  <!--LabProjectBatch--><service name="createLabProjectBatch" default-entity-name="LabProjectBatch" engine="entity-auto"  invoke="create" auth="true">  <description>Create a LabProjectBatch</description>  <auto-attributes include="pk" mode="INOUT" optional="true"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/> </service>  <service name="updateLabProjectBatch" default-entity-name="LabProjectBatch" engine="entity-auto" invoke="update" auth="true">  <description>Update a LabProjectBatch</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/>  </service>  <service name="deleteLabProjectBatch" default-entity-name="LabProjectBatch" engine="entity-auto"  invoke="delete" auth="true">  <description>Delete a LabProjectBatch</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  </service> <!--StuBatch--><service name="createStuBatch" default-entity-name="StuBatch" engine="entity-auto"  invoke="create" auth="true">  <description>Create a StuBatch</description>  <auto-attributes include="pk" mode="INOUT" optional="true"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/> </service>  <service name="updateStuBatch" default-entity-name="StuBatch" engine="entity-auto" invoke="update" auth="true">  <description>Update a StuBatch</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  <auto-attributes include="nonpk" mode="IN" optional="true"/>  </service>  <service name="deleteStuBatch" default-entity-name="StuBatch" engine="entity-auto"  invoke="delete" auth="true">  <description>Delete a StuBatch</description>  <auto-attributes include="pk" mode="IN" optional="false"/>  </service>  <service name="bookingBatchGroovy" engine="groovy" location="component://booking/groovyScripts/BookingBatch.groovy" invoke="bookingBatch">        <description>Test Groovy Script Service</description>        <attribute name="batchId" type="String" mode="IN" optional="false"/>        <attribute name="result" type="String" mode="OUT"/><attribute name="proName" type="String" mode="IN" optional="true"/>    </service><service name="auditingStuBatchList" engine="groovy" location="component://booking/groovyScripts/BookingBatch.groovy" invoke="auditingStuBatchList">        <description>Test Groovy Script Service</description>        <attribute name="stuBatchIds" type="List" mode="IN" optional="true"/>        <attribute name="result" type="String" mode="IN" optional="true"/><attribute name="reason" type="String" mode="IN" optional="true"/><!--<attribute name="resultMsg" type="String" mode="OUT"/>-->    </service><service name="editBookingAttendance" engine="groovy" location="component://booking/groovyScripts/BookingBatch.groovy" invoke="editBookingAttendance">        <description>批量考勤确认</description>        <attribute name="stuBatchIds" type="List" mode="IN" optional="true"/>        <attribute name="attendance" type="String" mode="IN" optional="true"/><!--<attribute name="resultMsg" type="String" mode="OUT"/>-->    </service><service name="addUserLogin" engine="groovy" location="component://booking/groovyScripts/UserLogin.groovy" invoke="addUserLogin">        <description>新增登录账户</description>        <attribute name="userLoginId" type="String" mode="IN" optional="true"/>        <attribute name="name" type="String" mode="IN" optional="true"/><attribute name="role" type="String" mode="IN" optional="true"/><attribute name="result" type="String" mode="OUT"/>    </service><service name="resetPassword" engine="groovy" location="component://booking/groovyScripts/UserLogin.groovy" invoke="resetPassword">        <description>重置账户密码</description>        <attribute name="userLoginId" type="String" mode="IN" optional="true"/><attribute name="result" type="String" mode="OUT"/>    </service><service name="deleteUserLogin" engine="groovy" location="component://booking/groovyScripts/UserLogin.groovy" invoke="deleteUserLogin">        <description>删除账户</description>        <attribute name="userLoginId" type="String" mode="IN" optional="true"/><attribute name="result" type="String" mode="OUT"/>    </service><service name="updateUserLoginName" engine="groovy" location="component://booking/groovyScripts/UserLogin.groovy" invoke="updateUserLoginName">        <description>修改账户名称</description>        <attribute name="userLoginId" type="String" mode="IN" optional="true"/><attribute name="firstname" type="String" mode="IN" optional="true"/><attribute name="result" type="String" mode="OUT"/>    </service><service name="importStudents" engine="groovy" location="component://booking/groovyScripts/UserLogin.groovy" invoke="importStudents">        <description>批量导入学生信息</description>        <attribute name="userLoginId" type="String" mode="IN" optional="true"/><attribute name="result" type="String" mode="OUT"/>    </service></services>

secas.xml

<?xml version="1.0" encoding="UTF-8"?><service-eca xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/service-eca.xsd">   <!--    <eca service="createStudent" event="commit"><set field-name="userLoginId" value="$(stuId)"/><set field-name="userLoginId" env-name="stuId" /><set field-name="role" env-name="student" />        <action service="resetPassword" mode="sync"/>    </eca>   --></service-eca>
eecas.xml

<?xml version="1.0" encoding="UTF-8"?><entity-eca xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/entity-eca.xsd">    <!-- Inventory Issue ECAs for Immediately Fulfilled Booking -->    <eca entity="Student" operation="create" event="return">        <set field-name="userLoginId" env-name="stuId" /><set field-name="role" value="bookingStudent" />        <action service="addUserLogin" mode="sync"/>    </eca><eca entity="Student" operation="remove" event="return">        <set field-name="userLoginId" env-name="stuId" />        <action service="deleteUserLogin" mode="sync"/>    </eca><eca entity="Student" operation="store" event="return">        <set field-name="userLoginId" env-name="stuId" /><set field-name="firstname" env-name="name" />        <action service="updateUserLoginName" mode="sync"/>    </eca><eca entity="Admin" operation="create" event="return">        <set field-name="userLoginId" env-name="adminId" /><set field-name="role" value="bookingAdmin" />        <action service="addUserLogin" mode="sync"/>    </eca><eca entity="Admin" operation="remove" event="return">        <set field-name="userLoginId" env-name="adminId" />        <action service="deleteUserLogin" mode="sync"/>    </eca><eca entity="Admin" operation="store" event="return">        <set field-name="userLoginId" env-name="adminId" /><set field-name="firstname" env-name="name" />        <action service="updateUserLoginName" mode="sync"/>    </eca></entity-eca>

entitymodel.xml

<?xml version="1.0" encoding="UTF-8"?><entitymodel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/entitymodel.xsd">    <!-- ========================================================= -->    <!-- ======================== Defaults ======================= -->    <!-- ========================================================= -->    <title>Entity of an Apache OFBiz Component</title>    <description>None</description>    <version>1.0</version>    <default-resource-name>BookingEntityLabels</default-resource-name><entity entity-name="Student" package-name="org.apache.ofbiz.booking.student" title="学生表">        <field name="stuId" type="id-ne"><description>primary sequenced ID</description></field>        <field name="name" type="name"></field>        <field name="stuNumber" type="name"></field><field name="class" type="name"></field><field name="sex" type="name"></field>        <prim-key field="stuId"/>    </entity><entity entity-name="Teacher" package-name="org.apache.ofbiz.booking.teacher" title="教师表">        <field name="tchId" type="id-ne"><description>primary sequenced ID</description></field>        <field name="name" type="name"></field>        <field name="deptName" type="name"></field><field name="sex" type="name"></field>        <prim-key field="tchId"/>    </entity><entity entity-name="Admin" package-name="org.apache.ofbiz.booking.admin" title="管理员表">        <field name="adminId" type="id-ne"><description>primary sequenced ID</description></field>        <field name="name" type="name"></field>        <field name="deptName" type="name"></field><field name="sex" type="name"></field>        <prim-key field="adminId"/>    </entity>    <entity entity-name="Term" package-name="org.apache.ofbiz.booking.term" title="学期表">        <field name="termName" type="id-ne"><description>primary sequenced ID</description></field>        <field name="beginTime" type="date"></field>        <field name="endTime" type="date"></field><field name="used" type="name"></field>        <prim-key field="termName"/>    </entity><entity entity-name="Course" package-name="org.apache.ofbiz.booking.course" title="课程表">        <field name="courseId" type="id-ne"><description>primary sequenced ID</description></field>        <field name="courseName" type="name"></field>        <prim-key field="courseId"/>    </entity><entity entity-name="LabProject" package-name="org.apache.ofbiz.booking.project" title="实验项目表">        <field name="proId" type="id-ne"><description>primary sequenced ID</description></field>        <field name="proName" type="name"></field><field name="courseId" type="id-ne"></field><field name="termName" type="id-ne"></field>        <prim-key field="proId"/><relation type="one" fk-name="FK_LabProject_Course" rel-entity-name="Course"><key-map field-name="courseId"/></relation><relation type="one" fk-name="FK_LabProject_Term" rel-entity-name="Term"><key-map field-name="termName"/></relation>    </entity><entity entity-name="LabProjectBatch" package-name="org.apache.ofbiz.booking.projectbatch" title="实验项目批次表">        <field name="batchId" type="id-ne"><description>primary sequenced ID</description></field>        <field name="proId" type="id-ne"></field><field name="tchId" type="id-ne"></field><field name="address" type="description"></field><field name="capacity" type="numeric"></field><field name="date" type="date"></field><field name="classNO" type="name"></field><field name="asured" type="name"></field>        <prim-key field="batchId"/><relation type="one" fk-name="FK_ProjectBatch_LabProject" rel-entity-name="LabProject"><key-map field-name="proId"/></relation><relation type="one" fk-name="FK_ProjectBatch_Teacher" rel-entity-name="Teacher"><key-map field-name="tchId"/></relation>    </entity><entity entity-name="StuBatch" package-name="org.apache.ofbiz.booking.stubatch" title="学生预约实验项目批次申请表">        <field name="stuId" type="id-ne"><description>primary sequenced ID</description></field>        <field name="batchId" type="id-ne"></field><field name="date" type="date-time"></field><field name="result" type="name"></field><field name="reason" type="long-varchar"></field><field name="attendance" type="name"></field>        <prim-key field="stuId"/><prim-key field="batchId"/><prim-key field="date"/><relation type="one" fk-name="FK_StuBatch_Student" rel-entity-name="Student"><key-map field-name="stuId"/></relation><relation type="one" fk-name="FK_StuBatch_LabProjectBatch" rel-entity-name="LabProjectBatch"><key-map field-name="batchId"/></relation>    </entity>    </entitymodel>

entitymodel_view.xml

<?xml version="1.0" encoding="UTF-8"?><entitymodel xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/entitymodel.xsd">  <!-- ========================================================= -->  <!-- ======================== Defaults ======================= -->  <!-- ========================================================= -->    <title>Entity of an Apache OFBiz Component</title>    <description>None</description>    <version>1.0</version>  <!-- ========================================================= -->  <!-- org.apache.ofbiz.booking.LabProject -->  <!-- ========================================================= -->    <view-entity entity-name="LabProjectAndCourseAndTerm"            package-name="org.apache.ofbiz.booking.labproject"            never-cache="true"            title="LabProject And Course And Term View Entity">      <member-entity entity-alias="LP" entity-name="LabProject"/>      <member-entity entity-alias="CS" entity-name="Course"/>  <member-entity entity-alias="TM" entity-name="Term"/>      <alias entity-alias="LP" name="proId"/>      <alias entity-alias="LP" name="proName"/>      <alias entity-alias="LP" name="courseId" />      <alias entity-alias="LP" name="termName"/>      <alias entity-alias="CS" name="courseName"/>      <alias entity-alias="TM" name="beginTime"/>  <alias entity-alias="TM" name="endTime"/>  <alias entity-alias="TM" name="used"/>      <view-link entity-alias="LP" rel-entity-alias="CS" rel-optional="true">        <key-map field-name="courseId"/>      </view-link>  <view-link entity-alias="LP" rel-entity-alias="TM" rel-optional="true">        <key-map field-name="termName"/>      </view-link>  <relation type="one-nofk" rel-entity-name="Course" >        <key-map field-name="courseId"/>      </relation>    </view-entity><view-entity entity-name="StuBatchAndBookingPassNums"            package-name="org.apache.ofbiz.booking.stubatch"            never-cache="true"            title="学生预约审核通过统计信息">  <member-entity entity-alias="SB" entity-name="StuBatch"/>        <alias name="batchId" entity-alias="SB" group-by="true"/>    <alias entity-alias="SB" name="bookingPassNums" function="count" field="stuId" />  <entity-condition>        <condition-expr entity-alias="SB" field-name="result" operator="equals" value="Y"/>  </entity-condition>    </view-entity><view-entity entity-name="StuBatchAndBookingTotalNums"            package-name="org.apache.ofbiz.booking.stubatch"            never-cache="true"            title="项目批准预约学生总数统计">  <member-entity entity-alias="SB" entity-name="StuBatch"/>  <alias name="batchId" entity-alias="SB" group-by="true"/>  <alias entity-alias="SB" name="bookingTotalNums" function="count" field="stuId" />    </view-entity><view-entity entity-name="LabProjectBatchAndLabProjectAndTeacher"            package-name="org.apache.ofbiz.booking.labproject"            never-cache="true"            title="LabProject And Course And Term View Entity">      <member-entity entity-alias="LPB" entity-name="LabProjectBatch"/>      <member-entity entity-alias="LP" entity-name="LabProject"/>  <member-entity entity-alias="T" entity-name="Teacher"/>  <member-entity entity-alias="CS" entity-name="Course"/>  <member-entity entity-alias="BTN" entity-name="StuBatchAndBookingTotalNums"/>  <member-entity entity-alias="BPN" entity-name="StuBatchAndBookingPassNums"/>    <alias name="batchId" entity-alias="LPB" />  <alias name="proId" entity-alias="LPB" />  <alias name="tchId" entity-alias="LPB"/>  <alias name="address" entity-alias="LPB" />  <alias name="capacity" entity-alias="LPB"/>  <alias name="date" entity-alias="LPB" />  <alias name="classNO" entity-alias="LPB" />  <alias name="asured" entity-alias="LPB"/>      <alias entity-alias="LP" name="proName"/>      <alias entity-alias="LP" name="courseId" />        <alias entity-alias="LP" name="termName"/>      <alias entity-alias="CS" name="courseName"/>      <alias entity-alias="T" name="tchName" field="name"/>    <alias entity-alias="BTN" name="bookingTotalNums" />  <alias entity-alias="BPN" name="bookingPassNums" />      <view-link entity-alias="LPB" rel-entity-alias="LP" rel-optional="true">        <key-map field-name="proId"/>      </view-link>  <view-link entity-alias="LP" rel-entity-alias="CS" rel-optional="true">        <key-map field-name="courseId"/>      </view-link>  <view-link entity-alias="LPB" rel-entity-alias="T" rel-optional="true">        <key-map field-name="tchId"/>      </view-link>    <view-link entity-alias="LPB" rel-entity-alias="BTN" rel-optional="true">        <key-map field-name="batchId"/>      </view-link>  <view-link entity-alias="LPB" rel-entity-alias="BPN" rel-optional="true">        <key-map field-name="batchId"/>      </view-link>    <relation type="one-nofk" rel-entity-name="LabProject"><key-map field-name="proId"/>  </relation>  <relation type="one-nofk" rel-entity-name="Teacher"><key-map field-name="tchId"/>  </relation>    </view-entity><view-entity entity-name="StuBatchAndLabProBach"            package-name="org.apache.ofbiz.booking.labproject"            never-cache="true"            title="LabProject And Course And Term View Entity">      <member-entity entity-alias="SB" entity-name="StuBatch"/>      <member-entity entity-alias="LP" entity-name="LabProjectBatchAndLabProjectAndTeacher"/>  <alias-all entity-alias="LP"/>  <alias name="stuId" entity-alias="SB" />    <alias name="applyDate" entity-alias="SB" field="date"></alias>  <alias name="result" entity-alias="SB"></alias>  <alias name="reason" entity-alias="SB"></alias>  <alias name="attendance" entity-alias="SB"></alias>    <view-link entity-alias="SB" rel-entity-alias="LP" rel-optional="true">        <key-map field-name="batchId"/>      </view-link>    <relation type="one-nofk" rel-entity-name="Student"><key-map field-name="stuId"/>  </relation>  <relation type="one-nofk" rel-entity-name="LabProjectBatchAndLabProjectAndTeacher"><key-map field-name="batchId"/>  </relation>    </view-entity></entitymodel>

BookingUiLabels.xml

<?xml version="1.0" encoding="UTF-8"?><resource xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/ofbiz-properties.xsd"><property key="BookingCompanyName">        <value xml:lang="en">xnxy</value>        <value xml:lang="zh">湘南学院</value>    </property><property key="BookingResetPassword">        <value xml:lang="en">Reset Password</value>        <value xml:lang="zh">重置密码</value>    </property><!--菜单国际化-->    <property key="BookingApplication">        <value xml:lang="en">Booking Application</value>        <value xml:lang="zh">预约管理应用</value>    </property><property key="StuInfoManange">        <value xml:lang="en">StuInfoManange</value>        <value xml:lang="zh">学生信息管理</value>    </property><property key="TchInfoManange">        <value xml:lang="en">TchInfoManange</value>        <value xml:lang="zh">教师信息管理</value>    </property><property key="AdminManange">        <value xml:lang="en">AdminManange</value>        <value xml:lang="zh">管理员信息管理</value>    </property><property key="LabInfoManange">        <value xml:lang="en">LabInfoManange</value>        <value xml:lang="zh">实验室管理</value>    </property><property key="TermManange">        <value xml:lang="en">TermManange</value>        <value xml:lang="zh">学期管理</value>    </property><property key="LabProjectManange">        <value xml:lang="en">LabProjectManange</value>        <value xml:lang="zh">实验项目管理</value>    </property><property key="LabProjectBatchManange">        <value xml:lang="en">LabProjectBatchManange</value>        <value xml:lang="zh">实验项目批次管理</value>    </property><property key="CourseManange">        <value xml:lang="en">CourseManange</value>        <value xml:lang="zh">课程管理</value>    </property><property key="StuBatchManange">        <value xml:lang="en">StuBatchManange</value>        <value xml:lang="zh">学生预约管理</value>    </property><property key="BookingAttendanceManange">        <value xml:lang="en">Booking Attendance Manange</value>        <value xml:lang="zh">考勤管理</value>    </property><property key="BookingStuBatchAttendance">        <value xml:lang="en">BookingStuBatchAttendance</value>        <value xml:lang="zh">考勤情况</value>    </property><property key="BookingStuBatchAttendanceY">        <value xml:lang="en">BookingStuBatchAttendanceY</value>        <value xml:lang="zh">签到</value>    </property><property key="BookingStuBatchAttendanceN">        <value xml:lang="en">BookingStuBatchAttendanceN</value>        <value xml:lang="zh">未签到</value>    </property><property key="BookingStuBatchAttendanceNULL">        <value xml:lang="en">BookingStuBatchAttendanceNULL</value>        <value xml:lang="zh">待考勤</value>    </property><property key="EditBookingAttendanceY">        <value xml:lang="en">EditBookingAttendanceY</value>        <value xml:lang="zh">批量签到确认</value>    </property><property key="EditBookingAttendanceN">        <value xml:lang="en">EditBookingAttendanceN</value>        <value xml:lang="zh">批量缺勤确认</value>    </property><property key="BookingLab">        <value xml:lang="en">BookingLab</value>        <value xml:lang="zh">预约实验室</value>    </property><property key="InReview">        <value xml:lang="en">InReview</value>        <value xml:lang="zh">待审核的预约</value>    </property><property key="MyBooking">        <value xml:lang="en">MyBooking</value>        <value xml:lang="zh">我的预约</value>    </property><property key="LabProjectBatchConfirm">        <value xml:lang="en">LabProjectBatchConfirm</value>        <value xml:lang="zh">实验项目批次确认</value>    </property><property key="LabProjectBatchCancel">        <value xml:lang="en">LabProjectBatchCancel</value>        <value xml:lang="zh">实验项目批次取消</value>    </property><property key="FindBookingStuInfo">        <value xml:lang="en">FindBookingStuInfo</value>        <value xml:lang="zh">浏览预约学生信息</value>    </property><property key="FindCourseTable">        <value xml:lang="en">FindCourseTable</value>        <value xml:lang="zh">浏览实验课课表</value>    </property><!--菜单国际化--><property key="BookingSex">        <value xml:lang="en">Sex</value>        <value xml:lang="zh">性别</value>    </property><property key="BookingName">        <value xml:lang="en">name</value>        <value xml:lang="zh">姓名</value>    </property><!--学期管理模块--><property key="EditTerm">        <value xml:lang="en">Create Term</value>        <value xml:lang="zh">添加学期</value>    </property><property key="TermTermName">        <value xml:lang="en">TermName</value>        <value xml:lang="zh">学期名称</value>    </property><property key="TermBeginTime">        <value xml:lang="en">BeginTime</value>        <value xml:lang="zh">开始日期</value>    </property><property key="TermEndTime">        <value xml:lang="en">EndTime</value>        <value xml:lang="zh">终止日期</value>    </property><property key="TermUsed">        <value xml:lang="en">Used</value>        <value xml:lang="zh">是否可用</value>    </property><property key="PageTitleLookupTerm">        <value xml:lang="en">Find Term</value>        <value xml:lang="zh">查找学期</value>    </property><property key="BookingNotModification">        <value xml:lang="en">BookingNotModification</value>        <value xml:lang="zh">不能修改</value>    </property><!--学生管理模块--><property key="EditStudent">        <value xml:lang="en">Create Student</value>        <value xml:lang="zh">添加学生</value>    </property><property key="ImportStudents">        <value xml:lang="en">ImportStudents</value>        <value xml:lang="zh">批量导入学生</value>    </property><property key="BookingDownloadStudentTemplet">        <value xml:lang="en">Download Templet</value>        <value xml:lang="zh">下载模板</value>    </property><property key="BookingStudentStuId">        <value xml:lang="en">Student Id</value>        <value xml:lang="zh">学生标识ID</value>    </property><property key="BookingStudentStuNumber">        <value xml:lang="en">stuNumber</value>        <value xml:lang="zh">学号</value>    </property><property key="BookingStudentClass">        <value xml:lang="en">class</value>        <value xml:lang="zh">班级</value>    </property><property key="BookingStudentName">        <value xml:lang="en">Student Name</value>        <value xml:lang="zh">学生姓名</value>    </property><!--教师管理模块--><property key="EditTeacher">        <value xml:lang="en">Create Teacher</value>        <value xml:lang="zh">添加教师</value>    </property><property key="BookingTeacherTchId">        <value xml:lang="en">Teacher Id</value>        <value xml:lang="zh">教师标识ID</value>    </property><property key="BookingTeacherDeptName">        <value xml:lang="en">Dept Name</value>        <value xml:lang="zh">所属学院</value>    </property><property key="BookingTeacherName">        <value xml:lang="en">Teacher Name</value>        <value xml:lang="zh">教师姓名</value>    </property><property key="PageTitleLookupTeacher">        <value xml:lang="en">Lookup Teacher</value>        <value xml:lang="zh">查找教师</value>    </property><!--管理员信息管理模块--><property key="EditAdmin">        <value xml:lang="en">Create Admin</value>        <value xml:lang="zh">添加管理员</value>    </property><property key="BookingAdminId">        <value xml:lang="en">Admin Id</value>        <value xml:lang="zh">管理员标识ID</value>    </property><property key="BookingAdminDeptName">        <value xml:lang="en">Dept Name</value>        <value xml:lang="zh">所属学院</value>    </property><property key="BookingAdminName">        <value xml:lang="en">Admin Name</value>        <value xml:lang="zh">管理员姓名</value>    </property><!--课程管理模块--><property key="BookingCourseId">        <value xml:lang="en">Course Id</value>        <value xml:lang="zh">课程ID</value>    </property><property key="EditCourse">        <value xml:lang="en">Create Course</value>        <value xml:lang="zh">添加课程</value>    </property><property key="BookingCourseName">        <value xml:lang="en">Course Name</value>        <value xml:lang="zh">课程名称</value>    </property><property key="PageTitleLookupCourse">        <value xml:lang="en">Find Course</value>        <value xml:lang="zh">查找课程</value>    </property><!--实验项目管理模块--><property key="EditLabProject">        <value xml:lang="en">LabProject</value>        <value xml:lang="zh">添加实验项目</value>    </property><property key="BookingLabProjectId">        <value xml:lang="en">LabProject ID</value>        <value xml:lang="zh">实验项目Id</value>    </property><property key="BookingLabProjectName">        <value xml:lang="en">LabProject Name</value>        <value xml:lang="zh">实验项目名称</value>    </property><property key="PageTitleLookupLabProject">        <value xml:lang="en">Lookup LabProject</value>        <value xml:lang="zh">查找实验项目</value>    </property><!--实验项目批次管理模块--><property key="EditLabProjectBatch">        <value xml:lang="en">Create LabProjectBatch</value>        <value xml:lang="zh">添加实验项目批次</value>    </property><property key="BookingLabProjectBatchId">        <value xml:lang="en">LabProjectBatch ID</value>        <value xml:lang="zh">实验项目批次Id</value>    </property><property key="BookingLabProjectBatchAddress">        <value xml:lang="en">Address</value>        <value xml:lang="zh">实验地点</value>    </property><property key="BookingLabProjectBatchCapacity">        <value xml:lang="en">Capacity</value>        <value xml:lang="zh">容纳人数</value>    </property><property key="BookingLabProjectBatchDate">        <value xml:lang="en">LabProject Date</value>        <value xml:lang="zh">实验日期</value>    </property><property key="BookingLabProjectBatchClassNO">        <value xml:lang="en">Class NO.</value>        <value xml:lang="zh">节次</value>    </property><property key="BookingLabProjectBatchAsured">        <value xml:lang="en">Asured</value>        <value xml:lang="zh">是否确认</value>    </property><property key="BookingTotalNums">        <value xml:lang="en">total nums</value>        <value xml:lang="zh">已预约人数</value>    </property><property key="BookingPassNums">        <value xml:lang="en">pass nums</value>        <value xml:lang="zh">预约通过人数</value>    </property><!--学生预约申请管理模块--><property key="BookingStuBatchAuditing">        <value xml:lang="en">Auditing</value>        <value xml:lang="zh">审核</value>    </property><property key="BookingStuBatchDate">        <value xml:lang="en">Apply Time</value>        <value xml:lang="zh">申请时间</value>    </property><property key="BookingStuBatchResult">        <value xml:lang="en">Apply Time</value>        <value xml:lang="zh">审核结果</value>    </property><property key="BookingStuBatchReason">        <value xml:lang="en">Reason</value>        <value xml:lang="zh">原因</value>    </property><property key="BookingStuBatchResultY">        <value xml:lang="en">pass</value>        <value xml:lang="zh">通过</value>    </property><property key="BookingStuBatchResultN">        <value xml:lang="en">refuse</value>        <value xml:lang="zh">拒绝</value>    </property><property key="BookingStuBatchResultNULL">        <value xml:lang="en"></value>        <value xml:lang="zh">审核中</value>    </property><property key="BookingBooking">        <value xml:lang="en">Booking</value>        <value xml:lang="zh">预约</value>    </property><property key="BookingBookingSuccess">        <value xml:lang="en">Booking Success</value>        <value xml:lang="zh">预约成功</value>    </property><property key="BookingBookingCancel">        <value xml:lang="en">Booking Cancel</value>        <value xml:lang="zh">取消预约</value>    </property><property key="AuditingStuBatchList">        <value xml:lang="en">Auditing Batch</value>        <value xml:lang="zh">批量审核</value>    </property></resource>

CommonScreens.xml

<?xml version="1.0" encoding="UTF-8"?><screens xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"        xmlns="http://ofbiz.apache.org/Widget-Screen" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Screen http://ofbiz.apache.org/dtds/widget-screen.xsd">    <screen name="main-decorator">        <section>            <actions>                <!-- base/top/specific map first, then more common map added for shared labels -->                <property-map resource="BookingUiLabels" map-name="uiLabelMap" global="true"/>                <property-map resource="CommonUiLabels" map-name="uiLabelMap" global="true"/>                <set field="layoutSettings.companyName" from-field="uiLabelMap.BookingCompanyName" global="true"/>                <set field="layoutSettings.companySubtitle" from-field="uiLabelMap.BookingCompanySubtitle" global="true"/>                  <set field="activeApp" value="booking" global="true"/>                <set field="applicationMenuName" value="BookingAppBar" global="true"/>                <set field="applicationMenuLocation" value="component://booking/widget/booking/BookingMenus.xml" global="true"/>                <set field="applicationTitle" value="${uiLabelMap.BookingApplication}" global="true"/>            </actions>            <widgets>                <section>                    <condition>                        <if-has-permission permission="BOOKING" action="_VIEW"/>                    </condition>                    <actions>                        <!-- <set field="layoutSettings.javaScripts[]" value="/example/js/ExamplePushNotifications.js" global="true"/>-->                    </actions>                </section>                <include-screen name="ApplicationDecorator" location="component://commonext/widget/CommonScreens.xml"/>            </widgets>        </section>    </screen><screen name="CommonBookingDecorator">        <section>            <widgets>                <decorator-screen name="main-decorator">                    <decorator-section name="body">                        <section>                            <condition>                                <if-has-permission permission="BOOKING" action="_VIEW"/>                            </condition>                            <widgets>                                <decorator-section-include name="body"/>                            </widgets>                            <fail-widgets>                                <label style="h3">${uiLabelMap.BookingViewPermissionError}</label>                            </fail-widgets>                        </section>                    </decorator-section>                </decorator-screen>            </widgets>        </section>    </screen><screen name="FindScreenDecorator">        <section>            <widgets>                <section>                    <condition>                        <if-empty field="titleProperty"/>                    </condition>                    <widgets>                        <container style="page-title"><label text="${title}"></label></container>                    </widgets>                    <fail-widgets>                        <container style="page-title"><label text="${uiLabelMap[titleProperty]}"></label></container>                    </fail-widgets>                </section>                <decorator-section-include name="menu-bar"/>                <container style="clear"/>                <screenlet id="searchOptions" name="findScreenlet" collapsible="true" title="${uiLabelMap.CommonSearchOptions}">                    <container id="search-options">                        <decorator-section-include name="search-options" />                    </container>                </screenlet>                <screenlet padded="false">                    <label style="h3" text="${uiLabelMap.CommonSearchResults}"/>                    <container id="search-results">                        <decorator-section-include name="search-results"/>                    </container>                </screenlet>            </widgets>        </section>    </screen><screen name="FindNoSearchScreenDecorator">        <section>            <widgets>                <section>                    <condition>                        <if-empty field="titleProperty"/>                    </condition>                    <widgets>                        <container style="page-title"><label text="${title}"></label></container>                    </widgets>                    <fail-widgets>                        <container style="page-title"><label text="${uiLabelMap[titleProperty]}"></label></container>                    </fail-widgets>                </section>                <decorator-section-include name="menu-bar"/>                <container style="clear"/>                <screenlet padded="false">                    <container id="search-results">                        <decorator-section-include name="search-results"/>                    </container>                </screenlet>            </widgets>        </section>    </screen></screens>

BookingMenus.xml

<?xml version="1.0" encoding="UTF-8"?><menus xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xmlns="http://ofbiz.apache.org/Widget-Menu" xsi:schemaLocation="http://ofbiz.apache.org/Widget-Menu http://ofbiz.apache.org/dtds/widget-menu.xsd">    <menu name="BookingAppBar" title="${uiLabelMap.BookingApplication}" extends="CommonAppBarMenu" extends-resource="component://common/widget/CommonMenus.xml"><!--管理员模块-->        <menu-item name="StuInfoManange" title="${uiLabelMap.StuInfoManange}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_StuInfoManange_VIEW"/></or>            </condition>            <link target="FindStudent"/>        </menu-item><menu-item name="TchInfoManange" title="${uiLabelMap.TchInfoManange}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_TchInfoManange_VIEW"/></or>            </condition>            <link target="FindTeacher"/>        </menu-item><menu-item name="AdminManange" title="${uiLabelMap.AdminManange}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_AdminManange_VIEW"/></or>            </condition>            <link target="FindAdmin"/>        </menu-item><menu-item name="TermManange" title="${uiLabelMap.TermManange}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_TermManange_VIEW"/></or>            </condition>            <link target="FindTerm"/>        </menu-item><menu-item name="CourseManange" title="${uiLabelMap.CourseManange}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_CourseManange_VIEW"/></or>            </condition>            <link target="FindCourse"/>        </menu-item><menu-item name="LabProjectManange" title="${uiLabelMap.LabProjectManange}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_LabProjectManange_VIEW"/></or>            </condition>            <link target="FindLabProject"/>        </menu-item><menu-item name="LabProjectBatchManange" title="${uiLabelMap.LabProjectBatchManange}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_LabProjectBatchManange_VIEW"/></or>            </condition>            <link target="FindLabProjectBatch"/>        </menu-item><menu-item name="StuBatchManange" title="${uiLabelMap.StuBatchManange}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_StuBookingManange_VIEW"/></or>            </condition>            <link target="FindStuBatch"/>        </menu-item><menu-item name="BookingAttendanceManange" title="${uiLabelMap.BookingAttendanceManange}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_BookingAttendanceManange_VIEW"/></or>            </condition>            <link target="BookingAttendanceManange"/>        </menu-item><!--学生模块--><menu-item name="BookingLab" title="${uiLabelMap.BookingLab}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_BookingLab_VIEW"/></or>            </condition>            <link target="FindBatchForStudent"/>        </menu-item><menu-item name="InReview" title="${uiLabelMap.InReview}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_InReview_VIEW"/></or>            </condition>            <link target="FindBookingInReview"/>        </menu-item><menu-item name="MyBooking" title="${uiLabelMap.MyBooking}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_MyBooking_VIEW"/></or>            </condition>            <link target="FindMyBooking"/>        </menu-item><!--教师模块--><!--<menu-item name="LabProjectBatchConfirm" title="${uiLabelMap.LabProjectBatchConfirm}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_LabProjectBatchConfirm_VIEW"/></or>            </condition>            <link target="FindBookedLabProjectBatch"/>        </menu-item><menu-item name="LabProjectBatchCancel" title="${uiLabelMap.LabProjectBatchCancel}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_LabProjectBatchCancel_VIEW"/></or>            </condition>            <link target="FindConfirmedLabProjectBatch"/>        </menu-item><menu-item name="FindBookingStuInfo" title="${uiLabelMap.FindBookingStuInfo}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_FindBookingStuInfo_VIEW"/></or>            </condition>            <link target="FindBookingStuInfo"/>        </menu-item><menu-item name="FindCourseTable" title="${uiLabelMap.FindCourseTable}"><condition><or><if-has-permission permission="BOOKING" action="_ADMIN"/><if-has-permission permission="BOOKING" action="_FindBookingStuInfo_VIEW"/></or>            </condition>            <link target="FindCourseTable"/>        </menu-item>-->    </menu></menus>


返回导航页








阅读全文
0 0
原创粉丝点击