update: Qvm Module

Replace :
MachineLocation by QvmMachineLocation
Operation by QvmOperation
OperationType by QvmOperationType
This commit is contained in:
zakaria.hachem
2024-11-16 21:23:50 +01:00
parent 9cf69d3b44
commit 8d8a94b65f
12 changed files with 98 additions and 67 deletions

View File

@@ -0,0 +1,32 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<object-views xmlns="http://axelor.com/xml/ns/object-views"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://axelor.com/xml/ns/object-views http://axelor.com/xml/ns/object-views/object-views_6.1.xsd">
<selection name="maintenance.maintenance.create.mtn.select">
<option value="0">First reached</option>
<option value="1">All reached</option>
</selection>
<selection name="maintenance.maintenance.request.status.select">
<option value="0">maintenance.request.planned</option>
<option value="1">In progress</option>
<option value="2">Completed</option>
<option value="3">Canceled</option>
</selection>
<selection name="maintenance.maintenance.request.action.select">
<option value="0">Corrective</option>
<option value="1">Preventive</option>
</selection>
<selection id="maintenance.sequence.generic.code.select"
name="sequence.generic.code.select">
<option value="maintenance">Maintenance</option>
</selection>
<selection id="maintenance.manuf.order.type.select" name="manuf.order.type.select">
<option value="3">Maintenance</option>
</selection>
</object-views>

View File

@@ -18,13 +18,13 @@
package com.axelor.apps.qvm.module;
import com.axelor.app.AxelorModule;
import com.axelor.apps.qvm.service.OperationService;
import com.axelor.apps.qvm.service.OperationServiceImpl;
import com.axelor.apps.qvm.service.QvmOperationService;
import com.axelor.apps.qvm.service.QvmOperationServiceImpl;
public class QvmModule extends AxelorModule {
@Override
protected void configure() {
bind(OperationService.class).to(OperationServiceImpl.class);
bind(QvmOperationService.class).to(QvmOperationServiceImpl.class);
}
}

View File

@@ -18,21 +18,21 @@
package com.axelor.apps.qvm.service;
import com.axelor.apps.base.db.Company;
import com.axelor.apps.qvm.db.Operation;
import com.axelor.apps.qvm.db.QvmOperation;
import com.axelor.exception.AxelorException;
import com.google.inject.persist.Transactional;
public interface OperationService {
public interface QvmOperationService {
@Transactional
public Operation createCalibrationSeq(Company company) throws AxelorException;
public QvmOperation createCalibrationSeq(Company company) throws AxelorException;
@Transactional
public Operation createQualificationSeq(Company company) throws AxelorException;
public QvmOperation createQualificationSeq(Company company) throws AxelorException;
@Transactional
public Operation createOperationSeq(Company company) throws AxelorException;
public QvmOperation createOperationSeq(Company company) throws AxelorException;
@Transactional
public Operation setMachine(Operation operation) throws AxelorException;
public QvmOperation setMachine(QvmOperation operation) throws AxelorException;
}

View File

@@ -20,40 +20,40 @@ package com.axelor.apps.qvm.service;
import com.axelor.apps.base.db.Company;
import com.axelor.apps.base.db.repo.SequenceRepository;
import com.axelor.apps.base.service.administration.SequenceService;
import com.axelor.apps.qvm.db.Operation;
import com.axelor.apps.qvm.db.QvmOperation;
import com.axelor.exception.AxelorException;
import com.axelor.exception.db.repo.TraceBackRepository;
import com.axelor.i18n.I18n;
import com.google.inject.Inject;
import com.google.inject.persist.Transactional;
public class OperationServiceImpl implements OperationService {
public class QvmOperationServiceImpl implements QvmOperationService {
@Inject
protected SequenceService sequenceService;
@Transactional
public Operation createCalibrationSeq(Company company) throws AxelorException {
public QvmOperation createCalibrationSeq(Company company) throws AxelorException {
Operation calibration = new Operation();
QvmOperation calibration = new QvmOperation();
calibration.setSerialNumber(this.getCalibrationSequence(company));
return calibration;
}
@Transactional
public Operation createQualificationSeq(Company company) throws AxelorException {
public QvmOperation createQualificationSeq(Company company) throws AxelorException {
Operation qualification = new Operation();
QvmOperation qualification = new QvmOperation();
qualification.setSerialNumber(this.getQualificationSequence(company));
return qualification;
}
@Transactional
public Operation createOperationSeq(Company company) throws AxelorException {
public QvmOperation createOperationSeq(Company company) throws AxelorException {
Operation operation = new Operation();
QvmOperation operation = new QvmOperation();
operation.setSerialNumber(this.getOperationSequence(company));
return operation;
@@ -98,7 +98,7 @@ public class OperationServiceImpl implements OperationService {
return seq;
}
public Operation setMachine(Operation calibration) throws AxelorException {
public QvmOperation setMachine(QvmOperation calibration) throws AxelorException {
if (calibration.getMachineName() != null) {
System.out.println("calibration.getMachineName : " + calibration.getMachineName());
}

View File

@@ -17,9 +17,9 @@
*/
package com.axelor.apps.qvm.web;
import com.axelor.apps.qvm.db.Operation;
import com.axelor.apps.qvm.service.OperationService;
import com.axelor.apps.qvm.service.OperationServiceImpl;
import com.axelor.apps.qvm.db.QvmOperation;
import com.axelor.apps.qvm.service.QvmOperationService;
import com.axelor.apps.qvm.service.QvmOperationServiceImpl;
import com.axelor.exception.AxelorException;
import com.axelor.exception.service.TraceBackService;
import com.axelor.inject.Beans;
@@ -36,12 +36,12 @@ public class QvmOperationController {
public void setSequenceOperation(ActionRequest request, ActionResponse response) {
try {
Operation calibration = request.getContext().asType(Operation.class);
QvmOperation calibration = request.getContext().asType(QvmOperation.class);
if (calibration != null && calibration.getCompany() != null) {
response.setValue(
"serialNumber",
Beans.get(OperationService.class)
Beans.get(QvmOperationService.class)
.createOperationSeq(calibration.getCompany())
.getSerialNumber());
} else {
@@ -56,12 +56,12 @@ public class QvmOperationController {
public void setSequenceCalibration(ActionRequest request, ActionResponse response) {
try {
Operation calibration = request.getContext().asType(Operation.class);
QvmOperation calibration = request.getContext().asType(QvmOperation.class);
if (calibration != null && calibration.getCompany() != null) {
response.setValue(
"serialNumber",
Beans.get(OperationService.class)
Beans.get(QvmOperationService.class)
.createCalibrationSeq(calibration.getCompany())
.getSerialNumber());
} else {
@@ -76,12 +76,12 @@ public class QvmOperationController {
public void setSequenceQualification(ActionRequest request, ActionResponse response) {
try {
Operation calibration = request.getContext().asType(Operation.class);
QvmOperation calibration = request.getContext().asType(QvmOperation.class);
if (calibration != null && calibration.getCompany() != null) {
response.setValue(
"serialNumber",
Beans.get(OperationService.class)
Beans.get(QvmOperationService.class)
.createQualificationSeq(calibration.getCompany())
.getSerialNumber());
} else {
@@ -96,8 +96,7 @@ public class QvmOperationController {
public void setMachineInfo(ActionRequest request, ActionResponse response)
throws AxelorException {
Operation calibration = request.getContext().asType(Operation.class);
Operation newOperation = Beans.get(OperationService.class).setMachine(calibration);
// response.setValue(calibration,newOperation);
QvmOperation calibration = request.getContext().asType(QvmOperation.class);
QvmOperation newOperation = Beans.get(QvmOperationService.class).setMachine(calibration);
}
}

View File

@@ -6,8 +6,8 @@
<module name="production" package="com.axelor.apps.production.db"/>
<entity name="Machine">
<one-to-many name="operationList" ref="com.axelor.apps.qvm.db.Operation" mappedBy="machineName" title="Calibrations" />
<many-to-one name="machineLocation" ref="com.axelor.apps.qvm.db.MachineLocation" title="Machine Location" required="true"/>
<one-to-many name="operationList" ref="com.axelor.apps.qvm.db.QvmOperation" mappedBy="machineName" title="Operations" />
<many-to-one name="machineLocation" ref="com.axelor.apps.qvm.db.QvmMachineLocation" title="Machine Location" required="true"/>
<string name="model" title="Model"/>
<string name="machineId" title="ID"/>
<integer name="typeSelect" title="Type Select" default="0"/>

View File

@@ -5,9 +5,9 @@
<module name="qvm" package="com.axelor.apps.qvm.db"/>
<entity name="MachineLocation">
<entity name="QvmMachineLocation">
<string name="name" title="Location" required="true"/>
<many-to-one name="parent" ref="com.axelor.apps.qvm.db.MachineLocation" title="parent"/>
<many-to-one name="parent" ref="com.axelor.apps.qvm.db.QvmMachineLocation" title="parent"/>
<one-to-many name="machineList" ref="com.axelor.apps.production.db.Machine" mappedBy="machineLocation" title="Machine List" />
<integer name="orderByState"/>
<integer name="stockUnity" selection="operation.parent.location.select" default="0"/>

View File

@@ -5,25 +5,25 @@
<module name="qvm" package="com.axelor.apps.qvm.db"/>
<entity name="Operation">
<entity name="QvmOperation">
<string name="serialNumber" />
<many-to-one name="operationType" ref="com.axelor.apps.qvm.db.OperationType" required="true"/>
<many-to-one name="operationType" ref="com.axelor.apps.qvm.db.QvmOperationType" required="true"/>
<many-to-one name="machineName" ref="com.axelor.apps.production.db.Machine" required="true"/>
<string name="machineId"/>
<string name="machineBrand"/>
<string name="machineModel"/>
<string name="machineSerialNumber"/>
<many-to-one name="machineLocalisation" ref="com.axelor.apps.qvm.db.MachineLocation"/>
<many-to-one name="machineLocalisationParent" ref="com.axelor.apps.qvm.db.MachineLocation"/>
<many-to-one name="machineLocalisation" ref="com.axelor.apps.qvm.db.QvmMachineLocation"/>
<many-to-one name="machineLocalisationParent" ref="com.axelor.apps.qvm.db.QvmMachineLocation"/>
<integer name="stockUnity" selection="operation.parent.location.select" default="0"/>
<string name="fullRange"/>
<string name="operationRange"/>
<decimal name="leastCount"/>
<string name="operationFrequency"/>
<integer name="operationFrequency" selection="operation.frequency.select"/>
<date name="pastOperationDate"/>
<date name="operationDate"/>

View File

@@ -5,18 +5,18 @@
<module name="qvm" package="com.axelor.apps.qvm.db"/>
<entity name="OperationType">
<entity name="QvmOperationType">
<string name="fullName" namecolumn="true">
<![CDATA[
return name+" "+stockUnity;
]]>
</string>
<string name="name" title="Operation Type" required="true"/>
<string name="name" title="Qvm Operation Type" required="true"/>
<!--<many-to-one name="parent" ref="com.axelor.apps.qvm.db.MachineLocation" title="parent"/>-->
<integer name="stockUnity" selection="operation.parent.location.select" default="0"/>
<integer name="orderByState"/>
<one-to-many name="operationList" ref="com.axelor.apps.qvm.db.Operation" mappedBy="operationType" title="Operations" />
<one-to-many name="operationList" ref="com.axelor.apps.qvm.db.QvmOperation" mappedBy="operationType" title="Operations" />
<integer name="typeSelect"/>
</entity>

View File

@@ -3,13 +3,13 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://axelor.com/xml/ns/object-views http://axelor.com/xml/ns/object-views/object-views_5.2.xsd">
<grid name="machine-location-grid-qvm" title="Equipement Location" model="com.axelor.apps.qvm.db.MachineLocation">
<grid name="machine-location-grid-qvm" title="Equipement Location" model="com.axelor.apps.qvm.db.QvmMachineLocation">
<field name="name"/>
<field name="parent"/>
<field name="stockUnity"/>
</grid>
<form name="machine-location-form-qvm" title="Equipement Location" model="com.axelor.apps.qvm.db.MachineLocation" >
<form name="machine-location-form-qvm" title="Equipement Location" model="com.axelor.apps.qvm.db.QvmMachineLocation" >
<panel name="mainPanel">
<field name="name" colSpan="4"/>
<field name="parent" colSpan="4" onChange="save,action-record-machine_location-default-location-record"/>
@@ -18,7 +18,7 @@
</panel>
</form>
<kanban name="machine-location-kanban-view" title="Machine Location" model="com.axelor.apps.qvm.db.MachineLocation" columnBy="stockUnity" sequenceBy="orderByState" draggable="false" limit="30">
<kanban name="machine-location-kanban-view" title="Machine Location" model="com.axelor.apps.qvm.db.QvmMachineLocation" columnBy="stockUnity" sequenceBy="orderByState" draggable="false" limit="30">
<field name="name"/>
<field name="parent"/>
<template><![CDATA[
@@ -26,7 +26,7 @@
</template>
</kanban>
<action-view name="machine.location.qvm" model="com.axelor.apps.qvm.db.MachineLocation" title="Equipement Location">
<action-view name="machine.location.qvm" model="com.axelor.apps.qvm.db.QvmMachineLocation" title="Equipement Location">
<view name="machine-location-grid-qvm" type="grid"/>
<view name="machine-location-form-qvm" type="form"/>
<view name="machine-location-kanban-view" type="kanban"/>

View File

@@ -3,7 +3,7 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://axelor.com/xml/ns/object-views http://axelor.com/xml/ns/object-views/object-views_5.2.xsd">
<!-- Operation -->
<form name="operation-form" title="Operations" onNew="action-record-operation-default-record" model="com.axelor.apps.qvm.db.Operation">
<form name="operation-form" title="Operations" onNew="action-record-operation-default-record" model="com.axelor.apps.qvm.db.QvmOperation">
<toolbar>
<button name="printBtn" title="Print" readonlyIf="!id" icon="fa-print" onClick="action-production-request-method-print"/>
</toolbar>
@@ -54,7 +54,7 @@
</panel-mail>
</form>
<grid name="operation-grid" title="Operations" model="com.axelor.apps.qvm.db.Operation" edit-icon="true">
<grid name="operation-grid" title="Operations" model="com.axelor.apps.qvm.db.QvmOperation" edit-icon="true">
<hilite background="success" if="$moment(operationDueDate).diff(todayDate,'days') &lt; 0"/>
<hilite background="primary" if="$moment(operationDueDate).diff(todayDate,'days') == 0"/>
<hilite background="danger" if="$moment(operationDueDate).diff(todayDate,'days') &lt; 10 &amp;&amp; $moment(operationDueDate).diff(todayDate,'days') &gt; 0"/>
@@ -91,7 +91,7 @@
</grid>
<!-- Calibration -->
<form name="calibration-form" title="Calibrations" onNew="action-record-operation-default-record" model="com.axelor.apps.qvm.db.Operation">
<form name="calibration-form" title="Calibrations" onNew="action-record-operation-default-record" model="com.axelor.apps.qvm.db.QvmOperation">
<toolbar>
<button name="printBtn" title="Print" readonlyIf="!id" icon="fa-print" onClick="action-production-request-method-print"/>
</toolbar>
@@ -142,7 +142,7 @@
</panel-mail>
</form>
<grid name="calibration-grid" title="Calibrations" model="com.axelor.apps.qvm.db.Operation" edit-icon="true">
<grid name="calibration-grid" title="Calibrations" model="com.axelor.apps.qvm.db.QvmOperation" edit-icon="true">
<hilite background="success" if="$moment(operationDueDate).diff(todayDate,'days') &lt; 0"/>
<hilite background="primary" if="$moment(operationDueDate).diff(todayDate,'days') == 0"/>
<hilite background="danger" if="$moment(operationDueDate).diff(todayDate,'days') &lt; 10 &amp;&amp; $moment(operationDueDate).diff(todayDate,'days') &gt; 0"/>
@@ -179,7 +179,7 @@
</grid>
<!-- Qualification -->
<form name="qualification-form" title="Qualifications" onNew="action-record-operation-default-record" model="com.axelor.apps.qvm.db.Operation">
<form name="qualification-form" title="Qualifications" onNew="action-record-operation-default-record" model="com.axelor.apps.qvm.db.QvmOperation">
<toolbar>
<button name="printBtn" title="Print" readonlyIf="!id" icon="fa-print" onClick="action-production-request-method-print"/>
</toolbar>
@@ -230,7 +230,7 @@
</panel-mail>
</form>
<grid name="qualification-grid" title="Qualifications" model="com.axelor.apps.qvm.db.Operation" edit-icon="true">
<grid name="qualification-grid" title="Qualifications" model="com.axelor.apps.qvm.db.QvmOperation" edit-icon="true">
<hilite background="success" if="$moment(operationDueDate).diff(todayDate,'days') &lt; 0"/>
<hilite background="primary" if="$moment(operationDueDate).diff(todayDate,'days') == 0"/>
<hilite background="danger" if="$moment(operationDueDate).diff(todayDate,'days') &lt; 10 &amp;&amp; $moment(operationDueDate).diff(todayDate,'days') &gt; 0"/>
@@ -267,7 +267,7 @@
</grid>
<!-- Actions -->
<action-record name="action-record-machine-operation-default" model="com.axelor.apps.qvm.db.Operation">
<action-record name="action-record-machine-operation-default" model="com.axelor.apps.qvm.db.QvmOperation">
<field name="machineId" expr="eval:machineName.machineId" if="machineName != null"/>
<field name="machineBrand" expr="eval:machineName.brand" if="machineName != null"/>
<field name="machineModel" expr="eval:machineName.model" if="machineName != null"/>
@@ -277,24 +277,24 @@
<field name="stockUnity" expr="eval:machineName.machineLocation.parent.stockUnity" if="machineName != null"/>
</action-record>
<action-record name="action-record-operation-default-record" model="com.axelor.apps.qvm.db.Operation">
<action-record name="action-record-operation-default-record" model="com.axelor.apps.qvm.db.QvmOperation">
<field name="company" expr="eval:__user__.activeCompany" if="__user__.activeCompany != null"/>
<field name="company" expr="eval:__repo__(Company).all().fetchOne()" if="__user__.activeCompany == null &amp;&amp; __repo__(Company).all().fetch().size == 1"/>
</action-record>
<action-record name="action-operation-request-set-status-accept" model="com.axelor.apps.qvm.db.Operation">
<action-record name="action-operation-request-set-status-accept" model="com.axelor.apps.qvm.db.QvmOperation">
<field name="statusSelect" expr="eval:3"/>
</action-record>
<action-record name="action-operation-request-set-status-cancel" model="com.axelor.apps.qvm.db.Operation">
<action-record name="action-operation-request-set-status-cancel" model="com.axelor.apps.qvm.db.QvmOperation">
<field name="statusSelect" expr="eval:5"/>
</action-record>
<action-record name="action-operation-request-set-status-draft" model="com.axelor.apps.qvm.db.Operation">
<action-record name="action-operation-request-set-status-draft" model="com.axelor.apps.qvm.db.QvmOperation">
<field name="statusSelect" expr="eval:1"/>
</action-record>
<action-record name="action-operation-request-set-status-refuse" model="com.axelor.apps.qvm.db.Operation">
<action-record name="action-operation-request-set-status-refuse" model="com.axelor.apps.qvm.db.QvmOperation">
<field name="statusSelect" expr="eval:4"/>
</action-record>
<action-record name="action-operation-request-set-status-request" model="com.axelor.apps.qvm.db.Operation">
<action-record name="action-operation-request-set-status-request" model="com.axelor.apps.qvm.db.QvmOperation">
<field name="statusSelect" expr="eval:2"/>
</action-record>
@@ -303,13 +303,13 @@
<attribute if="externalInternal == true" name="title" expr="Internal :" for="externalInternal"/>
</action-attrs>
<action-view name="operation.action.view" model="com.axelor.apps.qvm.db.Operation" title="Operations">
<action-view name="operation.action.view" model="com.axelor.apps.qvm.db.QvmOperation" title="Operations">
<view name="operation-grid" type="grid"/>
<view name="operation-kanban-view" type="kanban"/>
<view name="operation-form" type="form"/>
</action-view>
<action-view name="operation.operation.action.view" model="com.axelor.apps.qvm.db.Operation" title="Calibrations">
<action-view name="operation.operation.action.view" model="com.axelor.apps.qvm.db.QvmOperation" title="Calibrations">
<view name="operation-grid" type="grid"/>
<view name="operation-kanban-view" type="kanban"/>
<view name="operation-form" type="form"/>
@@ -317,7 +317,7 @@
<context name="_ts" expr="eval: 1"/>
</action-view>
<action-view name="qualification.operation.action.view" model="com.axelor.apps.qvm.db.Operation" title="Qualifications">
<action-view name="qualification.operation.action.view" model="com.axelor.apps.qvm.db.QvmOperation" title="Qualifications">
<view name="operation-grid" type="grid"/>
<view name="operation-kanban-view" type="kanban"/>
<view name="operation-form" type="form"/>
@@ -325,7 +325,7 @@
<context name="_ts" expr="eval: 2"/>
</action-view>
<action-view name="operation.action.view.related" model="com.axelor.apps.qvm.db.Operation" title="Operations">
<action-view name="operation.action.view.related" model="com.axelor.apps.qvm.db.QvmOperation" title="Operations">
<view name="operation-grid" type="grid"/>
<view name="operation-form" type="form"/>
<domain>self.operationType = :_id</domain>

View File

@@ -3,7 +3,7 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://axelor.com/xml/ns/object-views http://axelor.com/xml/ns/object-views/object-views_5.2.xsd">
<form name="operation-type-form" title="Operations Type" model="com.axelor.apps.qvm.db.OperationType" width="large">
<form name="operation-type-form" title="Operations Type" model="com.axelor.apps.qvm.db.QvmOperationType" width="large">
<panel name="Overview" colspan="12">
<field name="name"/>
<field name="stockUnity"/>
@@ -11,12 +11,12 @@
<panel-dashlet name="operationList" title="Operations" action="operation.action.view.related" colSpan="12"/>
</form>
<grid name="operation-type-grid" title="Operations types" model="com.axelor.apps.qvm.db.OperationType" edit-icon="true">
<grid name="operation-type-grid" title="Operations types" model="com.axelor.apps.qvm.db.QvmOperationType" edit-icon="true">
<field name="name"/>
<field name="stockUnity"/>
</grid>
<kanban name="operation-type-kanban-view" title="Operations Type" model="com.axelor.apps.qvm.db.OperationType" columnBy="stockUnity" sequenceBy="stockUnity" draggable="false" limit="30">
<kanban name="operation-type-kanban-view" title="Operations Type" model="com.axelor.apps.qvm.db.QvmOperationType" columnBy="stockUnity" sequenceBy="stockUnity" draggable="false" limit="30">
<field name="name"/>
<field name="stockUnity"/>
<template><![CDATA[
@@ -24,7 +24,7 @@
</template>
</kanban>
<action-view name="operation.type.action.view" model="com.axelor.apps.qvm.db.OperationType" title="Operations Type">
<action-view name="operation.type.action.view" model="com.axelor.apps.qvm.db.QvmOperationType" title="Operations Type">
<view name="operation-type-grid" type="grid"/>
<view name="operation-type-kanban-view" type="kanban"/>
<view name="operation-type-form" type="form"/>