añadido Warehouse Restrictions
2
warehouse_stock_restrictions/__init__.py
Normal file
|
@ -0,0 +1,2 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
from . import stock
|
47
warehouse_stock_restrictions/__manifest__.py
Normal file
|
@ -0,0 +1,47 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
# Copyright © 2016 Techspawn Solutions. (<http://techspawn.in>).
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as published
|
||||
# by the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
{
|
||||
'name': "Warehouse Restrictions",
|
||||
|
||||
'summary': """
|
||||
Warehouse restrictions on users, Stock Location Restrictions. This module will restrict warehouse/stock locations on users.""",
|
||||
|
||||
'description': """
|
||||
This Module Restricts the User from Accessing Warehouse and Process Stock Moves other than allowed to Warehouses and Stock Locations.
|
||||
""",
|
||||
|
||||
'author': "Techspawn Solutions",
|
||||
'website': "http://www.techspawn.com",
|
||||
'license':'OPL-1',
|
||||
'category': 'Warehouse',
|
||||
'version': '0.2',
|
||||
'images': ['static/description/WarehouseRestrictions.gif'],
|
||||
'depends': ['base', 'stock'],
|
||||
|
||||
'data': [
|
||||
|
||||
'users_view.xml',
|
||||
'security/security.xml',
|
||||
# 'security/ir.model.access.csv',
|
||||
],
|
||||
|
||||
|
||||
}
|
15
warehouse_stock_restrictions/doc/index.rst
Executable file
|
@ -0,0 +1,15 @@
|
|||
Warehouse Restriction
|
||||
========================
|
||||
- This module will add Warehouse and Stock Location Restriction on Users
|
||||
|
||||
Installation
|
||||
============
|
||||
- Install the module normally like other modules.
|
||||
|
||||
Configuration
|
||||
=============
|
||||
- Add Default Warehouse Opertions and Allowed Stock Locations and you are ready to go.
|
||||
|
||||
Note
|
||||
====
|
||||
- This restrictions are created using rule and access rights, so it will have no effect on the Adminstrator.
|
|
@ -0,0 +1,4 @@
|
|||
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
|
||||
access_stock_picking_type_restricted_user,access_stock_picking_type_restricted_user,stock.model_stock_picking_type,base.group_system,1,1,1,0
|
||||
|
||||
|
|
21
warehouse_stock_restrictions/security/security.xml
Normal file
|
@ -0,0 +1,21 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<data>
|
||||
|
||||
<record id="group_restrict_warehouse" model="res.groups">
|
||||
<field name="name">Resrict Stock warehouses</field>
|
||||
</record>
|
||||
|
||||
<record id="filter_user_stock_picking_type_allowed_new" model="ir.rule">
|
||||
<field name="name">Filter Stock Picking Type Allowed new</field>
|
||||
<field name="model_id" search="[('model','=','stock.picking.type')]" model="ir.model"/>
|
||||
<field name="groups" eval="[(4, ref('group_restrict_warehouse'))]"/>
|
||||
<field name="domain_force">[('id','in', [ p.id for p in user.default_picking_type_ids ])]</field>
|
||||
<field name="perm_read" eval="True"/>
|
||||
<field name="perm_write" eval="True"/>
|
||||
<field name="perm_create" eval="True"/>
|
||||
<field name="perm_unlink" eval="False"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</odoo>
|
After Width: | Height: | Size: 106 KiB |
After Width: | Height: | Size: 1.7 MiB |
After Width: | Height: | Size: 191 KiB |
BIN
warehouse_stock_restrictions/static/description/check.png
Normal file
After Width: | Height: | Size: 152 KiB |
After Width: | Height: | Size: 9.1 KiB |
After Width: | Height: | Size: 152 KiB |
BIN
warehouse_stock_restrictions/static/description/icon.png
Normal file
After Width: | Height: | Size: 101 KiB |
BIN
warehouse_stock_restrictions/static/description/iconnew.png
Normal file
After Width: | Height: | Size: 4 KiB |
551
warehouse_stock_restrictions/static/description/index.html
Normal file
|
@ -0,0 +1,551 @@
|
|||
|
||||
<section class="oe_container custom_main_box" style="margin-top: -24px !important;">
|
||||
<div class="row mt92 o_equal_col_sm" style="max-width:1540px;margin:0 auto;background-color:#ebf2f8;padding-bottom:92px;border-radius:15px;">
|
||||
<div class="" style="display:block;margin:0 auto;width: 500px;">
|
||||
<!-- <div style="display: inline-block;width: 240px;">
|
||||
<a href="https://www.emiprotechnologies.com" target="_blank" style="width: 100%;display: inline-block;">
|
||||
<img class="img img-responsive mt16" src="emipro_logo.png" style="display: block;margin: 0 auto;" />
|
||||
</a>
|
||||
</div> -->
|
||||
<!-- <div style="width: 2px;height: 105px;background-image: -webkit-linear-gradient(transparent, #dce2e6, transparent);display: inline-block;vertical-align: top;"></div> -->
|
||||
<div style="display: inline-block;width: 240px; margin-left: 120px;">
|
||||
<a href="https://techspawn.com/connect-with-techspawn" target="_blank" style="width: 100%;display: inline-block;">
|
||||
<img class="img img-responsive mt16" src="logo.png" style="margin: 0 auto;display: block;"/>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
<section class="oe_container bg-transparent fixed-top position-relative" style="margin:-5rem 0">
|
||||
<div class="row o_equal_col_sm" style="margin: 0 300px;">
|
||||
<div class="shadow bg-white px-5 pb24 pt24" style="border-radius:15px">
|
||||
|
||||
<section class="oe_container custom_space" style="margin-bottom:px;">
|
||||
<div class="mt64 mb64 pt32 custom_gst_text" style="padding-top: 0px !important;">
|
||||
<h2 class="oe_slogan custom_gst_design" style="color: #ff8950;font-family: Roboto;font-weight: 500;text-align:center;text-transform: uppercase; margin-top: -50px !important; margin-bottom: 10px !important;">
|
||||
Warehouse Restriction
|
||||
</h2>
|
||||
<p class="mb16 text-center text-black-dark" style="font-family: Roboto;font-weight: initial;color: #091E42;text-align:center;"> By Techspawn Solutions
|
||||
</p>
|
||||
|
||||
<p class="mb16 text-center text-black-dark" style="font-family: Roboto;font-weight: initial;color: #091E42;text-align:center;">Warehouse and Stock Location Restriction on Users
|
||||
|
||||
</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<section class="oe_container">
|
||||
<section id="loempia_tabs" class="" style="padding:64px 20px;margin: 100px 0px;background-color:rgba(0, 56, 195, 0.12); border-radius: 22px;">
|
||||
<ul role="tablist" class="nav nav-tabs justify-content-center"
|
||||
data-tabs="tabs" style="border:none; background-color:unset">
|
||||
<li class="nav-item" style="border-top-right-radius: 6px;border-top-left-radius: 6px;background-color:#087dda;margin-right: 1px;padding-bottom: 2px;">
|
||||
<a href="#ept_features" class=""
|
||||
style="font-family: Roboto;text-transform: uppercase;font-weight: 600;font-size: 15px;letter-spacing: 1px;padding: 10px 20px;border-top-left-radius: 5px;border-top-right-radius: 5px;color: #2b2b2b;">Features
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<li class="nav-item"
|
||||
style="border-top-right-radius: 6px;border-top-left-radius: 6px;background-color:#087dda;margin-right: 1px;padding-bottom: 2px;">
|
||||
<a href="#ept_screenshots" class=""
|
||||
style="font-family: Roboto;text-transform: uppercase;font-weight: 600;font-size: 15px;letter-spacing: 1px;padding: 10px 20px;border-top-left-radius: 5px;border-top-right-radius: 5px;color: #2b2b2b;">Screenshots
|
||||
</a>
|
||||
</li>
|
||||
<li class="nav-item" style="border-top-right-radius: 6px;border-top-left-radius: 6px;background-color:#087dda;margin-right: 1px;padding-bottom: 2px;">
|
||||
<a href="#ept_userguid" class="" style="font-family: Roboto;text-transform: uppercase;font-weight: 600;font-size: 15px;letter-spacing: 1px;padding: 10px 20px;border-top-left-radius: 5px;border-top-right-radius: 5px;color: #2b2b2b;">User Guide</a>
|
||||
</li>
|
||||
<!--
|
||||
<li class="nav-item" style="border-top-right-radius: 6px;border-top-left-radius: 6px;background-color:#087dda;margin-right: 1px;padding-bottom: 2px;">
|
||||
<a href="#ept_faqs" class="" style="font-family: Roboto;text-transform: uppercase;font-weight: 600;font-size: 15px;letter-spacing: 1px;padding: 10px 20px;border-top-left-radius: 5px;border-top-right-radius: 5px;color: #2b2b2b;">FAQs</a>
|
||||
</li>
|
||||
-->
|
||||
</ul>
|
||||
|
||||
<section id="ept_features" style="padding: 20px 10px;margin: 20px 0px;background-color:#fff;border-radius: 22px;" class="ept_features d-flex align-items-center">
|
||||
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col" style="margin: 10px;">
|
||||
<div class="row" style="background-color:#edfcfb; border-radius: 13px;">
|
||||
<div class="col-md-3 text-center">
|
||||
<img class="img img-responsive" style="max-width:20%; margin-top: 11px;" src="features/check.png"/>
|
||||
</div>
|
||||
<div class="col-md-9">
|
||||
<p style="margin-top:10px; color: rgba(0, 0, 17, 1);font-size: 16px;"><b>Restrict Warehouse operations for User </b></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col" style="margin: 10px;">
|
||||
<div class="row" style="background-color:#edfcfb; border-radius: 13px;" >
|
||||
<div class="col-md-3 text-center">
|
||||
<img class="img img-responsive" style="max-width:20%; margin-top: 11px;" src="features/check.png"/>
|
||||
</div>
|
||||
<div class="col-md-9">
|
||||
<p style="margin-top:10px; color: rgba(0, 0, 17, 1);font-size: 16px;"><b> Restrict User to use specific Locations</b></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row">
|
||||
<div class="col" style="margin: 10px;">
|
||||
<div class="row" style="background-color:#edfcfb; border-radius: 13px;">
|
||||
<div class="col-md-3 text-center">
|
||||
<img class="img img-responsive" style="max-width:20%; margin-top: 11px;" src="features/check.png"/>
|
||||
</div>
|
||||
<div class="col-md-9">
|
||||
<p style="margin-top:10px; color: rgba(0, 0, 17, 1);font-size: 16px;"><b>Restrict the user to other warehouses </b></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col" style="margin: 10px;">
|
||||
<div class="row" style="background-color:#edfcfb; border-radius: 13px;" >
|
||||
<div class="col-md-3 text-center">
|
||||
<img class="img img-responsive" style="max-width:20%; margin-top: 11px;" src="features/check.png"/>
|
||||
</div>
|
||||
<div class="col-md-9">
|
||||
<p style="margin-top:10px; color: rgba(0, 0, 17, 1); font-size: 16px;"><b> On selecting Restrict Location optionadmin can add allowed Stock Location for the User</b></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
<section id="ept_screenshots"style="padding: 20px 10px;margin: 20px 0px;background-color:#fff;border-radius: 22px;" class="ept_screenshots">
|
||||
<div class="container" data-aos="fade-up">
|
||||
<div class="s_faq mt32 mb32" style="background-color: transparent !important;">
|
||||
<div class="panel-group" id="accordion" role="tablist" aria-multiselectable="true">
|
||||
<!--1-->
|
||||
<div class="panel-heading mt0 alert" style="border:1px solid transparent !important;border-radius: 10px;box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);background-color:#F0F4F7;padding: 15px 15px;margin: 0;">
|
||||
<h2 class="panel-title mb0">
|
||||
<i style="font-family: Roboto;font-weight:700;color: rgba(0, 0, 200, 1);font-size:30px;">
|
||||
<span class="panelcontent" style="padding: 0% 2%;">SCREENSHOTS
|
||||
</i>
|
||||
</h2>
|
||||
</div>
|
||||
<div class="panel-group" style="margin-bottom:2%; margin-top: 2%;">
|
||||
<div class="panel panel-default" style="box-shadow: unset;">
|
||||
<div class="panel-heading mt0 alert" style="border:1px solid transparent !important;border-radius: 10px;box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);padding: 12px 12px;margin: 0;">
|
||||
<h3 class="panel-title mb0">
|
||||
<a class="collapsed" style="font-family: Roboto;font-weight:500;color: #091E42;font-size:20px;" data-toggle="collapse" href="#collapse_4">
|
||||
<span class="panelcontent" style="padding: 0% 2%;">Select User you want to add restriction:
|
||||
</span>
|
||||
</a>
|
||||
</h3>
|
||||
</div>
|
||||
<div id="collapse_4" class="panel-collapse collapse mt16 mb16">
|
||||
<div class="mb16">
|
||||
<img src="user3.png" class="img img-responsive center-block"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 2 -->
|
||||
<div class="panel-group" style="margin-bottom:2%;">
|
||||
<div class="panel panel-default" style="box-shadow: unset;">
|
||||
<div class="panel-heading mt0 alert" style="border:1px solid transparent !important;border-radius: 10px;box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);padding: 15px 15px;margin: 0;">
|
||||
<h3 class="panel-title mb0">
|
||||
<a class="collapsed"
|
||||
style="font-family: Roboto;font-weight:500;color: #091E42;font-size:20px;" data-toggle="collapse" href="#collapse_9">
|
||||
<span class="panelcontent" style="padding: 0% 2%;">Select 'Restrict stock warehouse' option: </span>
|
||||
</a>
|
||||
</h3>
|
||||
</div>
|
||||
<div id="collapse_9" class="panel-collapse collapse mt16 mb16">
|
||||
<div class="mb16">
|
||||
<img src="set_group.png" class="img img-responsive center-block"/>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 3 -->
|
||||
<div class="panel-group" style="margin-bottom:2%;">
|
||||
<div class="panel panel-default" style="box-shadow: unset;">
|
||||
<div class="panel-heading mt0 alert" style="border:1px solid transparent !important;border-radius: 10px;box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);padding: 15px 15px;margin: 0;">
|
||||
<h3 class="panel-title mb0">
|
||||
<a class="collapsed"
|
||||
style="font-family: Roboto;font-weight:500;color: #091E42;font-size:20px;"
|
||||
data-toggle="collapse" href="#collapse_14">
|
||||
<span class="panelcontent" style="padding: 0% 2%;">Default Warehouse Operations:
|
||||
</span>
|
||||
</a>
|
||||
</h3>
|
||||
</div>
|
||||
<div id="collapse_14" class="panel-collapse collapse mt16 mb16">
|
||||
<div class="mb16">
|
||||
<img src="user4.png" class="img img-responsive center-block"/>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 4 -->
|
||||
<div class="panel-group" style="margin-bottom:2%;">
|
||||
<div class="panel panel-default" style="box-shadow: unset;">
|
||||
<div class="panel-heading mt0 alert" style="border:1px solid transparent !important;border-radius: 10px;box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);padding: 15px 15px;margin: 0;">
|
||||
<h3 class="panel-title mb0">
|
||||
<a class="collapsed"
|
||||
style="font-family: Roboto;font-weight:500;color: #091E42;font-size:20px;"
|
||||
data-toggle="collapse" href="#collapse_155">
|
||||
<span class="panelcontent" style="padding: 0% 2%;">Restrict the user to limited warehouses:
|
||||
</span>
|
||||
</a>
|
||||
</h3>
|
||||
</div>
|
||||
<div id="collapse_155" class="panel-collapse collapse mt16 mb16">
|
||||
<div class="mb16">
|
||||
<img src="user5.png" class="img img-responsive center-block"/>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 5 -->
|
||||
<div class="panel-group" style="margin-bottom:2%;">
|
||||
<div class="panel panel-default" style="box-shadow: unset;">
|
||||
<div class="panel-heading mt0 alert" style="border:1px solid transparent !important;border-radius: 10px;box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);padding: 15px 15px;margin: 0;">
|
||||
<h3 class="panel-title mb0">
|
||||
<a class="collapsed"
|
||||
style="font-family: Roboto;font-weight:500;color: #091E42;font-size:20px;"
|
||||
data-toggle="collapse" href="#collapse_166">
|
||||
<span class="panelcontent" style="padding: 0% 2%;"> Select Restrict Location option:
|
||||
</span>
|
||||
</a>
|
||||
</h3>
|
||||
</div>
|
||||
<div id="collapse_166" class="panel-collapse collapse mt16 mb16">
|
||||
<div class="mb16">
|
||||
<img src="user6.png" class="img img-responsive center-block"/>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel-group" style="margin-bottom:2%;">
|
||||
<div class="panel panel-default" style="box-shadow: unset;">
|
||||
<div class="panel-heading mt0 alert" style="border:1px solid transparent !important;border-radius: 10px;box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);padding: 15px 15px;margin: 0;">
|
||||
<h3 class="panel-title mb0">
|
||||
<a class="collapsed"
|
||||
style="font-family: Roboto;font-weight:500;color: #091E42;font-size:20px;"
|
||||
data-toggle="collapse" href="#collapse_17">
|
||||
<span class="panelcontent" style="padding: 0% 2%;">This restrictions are created using rule and access rights, so it will have no effect on the Adminstrator:
|
||||
</span>
|
||||
</a>
|
||||
</h3>
|
||||
</div>
|
||||
<div id="collapse_17" class="panel-collapse collapse mt16 mb16">
|
||||
<div class="mb16">
|
||||
<img src="warehouse2.png" class="img img-responsive center-block"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 6 -->
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<!-- End About Section -->
|
||||
|
||||
<section id="ept_userguid" style="padding: 20px 10px;margin: 20px 0px;background-color:#fff;border-radius: 22px;" class="ept_userguid">
|
||||
<div class="container" data-aos="fade-up">
|
||||
<div class="s_faq mt32 mb32" style="background-color: transparent !important;">
|
||||
<div class="panel-group" id="accordion1" role="tablist" aria-multiselectable="true">
|
||||
<div class="panel-heading mt0 alert" style="border:1px solid transparent !important;border-radius: 10px;box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);background-color:#F0F4F7;padding: 15px 15px;margin: 0;">
|
||||
<h2 class="panel-title mb0">
|
||||
<i style="font-family: Roboto;font-weight:700;color: rgba(0, 0, 200, 1);font-size:30px;">
|
||||
<span class="panelcontent" style="padding: 0% 2%;">USER GUIDE
|
||||
</i>
|
||||
</h2>
|
||||
</div>
|
||||
<div class="panel-group" style="margin-bottom:2%;margin-top: 2%;">
|
||||
<div class="panel panel-default" style="box-shadow: unset;">
|
||||
<div class="panel-heading mt0 alert" style="border:1px solid transparent !important;border-radius: 10px;box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);padding: 12px 12px;margin: 0;">
|
||||
<h3 class="panel-title mb0">
|
||||
<a class="collapsed"
|
||||
style="font-family: Roboto;font-weight:500;color: #091E42;font-size:20px;"
|
||||
data-toggle="collapse" href="#col_1">
|
||||
<span class="panelcontent" style="padding: 0% 2%;">Warehouse Restriction & Configuration Guide
|
||||
</h3>
|
||||
</div>
|
||||
<div id="col_1" class="panel-collapse collapse mt16 mb16">
|
||||
<div class="mb16">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Step 1 : Go to Settings/
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<img src="user2.png" class="img img-responsive center-block"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Step 2 : Go to Users & Companies/</div>
|
||||
<div class="panel-body">
|
||||
<img src="user1.png" class="img img-responsive center-block"/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading">Step 3 : Select the User and see screenshot Tab</div>
|
||||
<div class="panel-body">
|
||||
<img src="user3.png" class="img img-responsive center-block"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<!--
|
||||
<section id="ept_faqs" style="padding: 20px 10px;margin: 20px 0px;background-color:#fff;border-radius: 22px;"class="ept_faqs">
|
||||
<div class="container" data-aos="fade-up">
|
||||
<div class="s_faq mt32 mb32" style="background-color: transparent !important;">
|
||||
|
||||
<div class="panel-group" id="accordion2" role="tablist" aria-multiselectable="true">
|
||||
<div class="panel-heading mt0 alert" style="border:1px solid transparent !important;border-radius: 10px;box-shadow: 0 15px 35px rgba(50, 50, 93, 0.1), 0 5px 15px rgba(0, 0, 0, 0.07);background-color:#F0F4F7;padding: 15px 15px;margin: 0;">
|
||||
<h2 class="panel-title mb0">
|
||||
<i style="font-family: Roboto;font-weight:700;color: rgba(0, 0, 200, 1);font-size:30px;">
|
||||
<span class="panelcontent" style="padding: 0% 2%;">FAQS SECTION
|
||||
</i>
|
||||
</h2>
|
||||
</div>
|
||||
<div class="panel-group" style="margin-bottom:2%; margin-top: 2%;">
|
||||
<div class="panel panel-default">
|
||||
|
||||
<div class="panel-heading mt0 alert" style="border:1px solid transparent !important; border-radius:10px; padding:12px 12px; margin:0">
|
||||
<h3 class="panel-title mb0">
|
||||
<a class="collapsed" style="font-family:Roboto; font-weight:500; color:#091E42; font-size:20px" data-toggle="collapse" href="#co1" aria-expanded="false">
|
||||
<span class="panelcontent" style="padding:0% 2%">Does your module supports Odoo Community & Enterprise edition?
|
||||
</span>
|
||||
</a>
|
||||
</h3>
|
||||
</div>
|
||||
<div id="co1" class="panel-collapse mt16 mb16 collapse" style="">
|
||||
<div class="mb16">
|
||||
<span><p class="mb0" style="height:auto; padding-left:2%; margin-left:2%; font-family:Roboto"> Our module is compatible with both Odoo Community & Enterprise edition. Configuration is same for both editions.</p></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel-group" style="margin-bottom:2%">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading mt0 alert" style="border:1px solid transparent !important; border-radius:10px; padding:15px 15px; margin:0">
|
||||
<h3 class="panel-title mb0">
|
||||
<a class="collapsed" style="font-family:Roboto; font-weight:500; color:#091E42; font-size:20px" data-toggle="collapse" href="#co2" aria-expanded="false">
|
||||
<span class="panelcontent" style="padding:0% 2%">Can we do customization in the this module?
|
||||
</span>
|
||||
</a>
|
||||
</h3>
|
||||
</div>
|
||||
<div id="co2" class="panel-collapse mt16 mb16 collapse" style="">
|
||||
<div class="mb16">
|
||||
<span><p class="mb0" style="height:auto; padding-left:2%; margin-left:2%; font-family:Roboto"> Yes, you can do any type of customization with this module. If you want us to customize the module as per your requirement, please contact us at support@techspawn.com. Our team will be happy to help you with customization.</p></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel-group" style="margin-bottom:2%">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading mt0 alert" style="border:1px solid transparent !important; border-radius:10px; padding:15px 15px; margin:0">
|
||||
<h3 class="panel-title mb0">
|
||||
<a class="collapsed" style="font-family:Roboto; font-weight:500; color:#091E42; font-size:20px" data-toggle="collapse" href="#co3" aria-expanded="false">
|
||||
<span class="panelcontent" style="padding:0% 2%">Do we get installation support on the purchase of the app?
|
||||
</span>
|
||||
</a>
|
||||
</h3>
|
||||
</div>
|
||||
<div id="co3" class="panel-collapse mt16 mb16 collapse" style="">
|
||||
<div class="mb16">
|
||||
<span><p class="mb0" style="height:auto; padding-left:2%; margin-left:2%; font-family:Roboto"> Yes, we provide complete support for installation as well as post installation support also.</p></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel-group" style="margin-bottom:2%">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading mt0 alert" style="border:1px solid transparent !important; border-radius:10px; padding:15px 15px; margin:0">
|
||||
<h3 class="panel-title mb0">
|
||||
<a class="collapsed" style="font-family:Roboto; font-weight:500; color:#091E42; font-size:20px" data-toggle="collapse" href="#co4" aria-expanded="false">
|
||||
<span class="panelcontent" style="padding:0% 2%">Do I recieve upgrades if I purchase the app?
|
||||
</span>
|
||||
</a>
|
||||
</h3>
|
||||
</div>
|
||||
<div id="co4" class="panel-collapse mt16 mb16 collapse" style="">
|
||||
<div class="mb16">
|
||||
<span><p class="mb0" style="height:auto; padding-left:2%; margin-left:2%; font-family:Roboto"> Yes, you do recieve the updated app for the version you have purchased.</p></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="panel-group" style="margin-bottom:2%">
|
||||
<div class="panel panel-default">
|
||||
<div class="panel-heading mt0 alert" style="border:1px solid transparent !important; border-radius:10px; padding:15px 15px; margin:0">
|
||||
<h3 class="panel-title mb0">
|
||||
<a class="collapsed" style="font-family:Roboto; font-weight:500; color:#091E42; font-size:20px" data-toggle="collapse" href="#co5" aria-expanded="false">
|
||||
<span class="panelcontent" style="padding:0% 2%">Does the app allow two-way syncronization?
|
||||
</span>
|
||||
</a>
|
||||
</h3>
|
||||
</div>
|
||||
<div id="co5" class="panel-collapse mt16 mb16 collapse" style="">
|
||||
<div class="mb16">
|
||||
<span><p class="mb0" style="height:auto; padding-left:2%; margin-left:2%; font-family:Roboto"> Yes, you can Import & Export both from WooCommerce to Odoo and Odoo to WooCommerce. If you want to customize it as one-way syncronization, you can reach us at support@techspawn.com for customization.</p></span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
-->
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<div class="carsection">
|
||||
<h2 style='color:#091E42; font-family:"Montserrat"; font-size:45px;text-align:center; margin:25px auto; text-transform:uppercase' class="oe_slogan">
|
||||
<b>Related Products</b>
|
||||
</h2>
|
||||
|
||||
<div id="imageCarousel" class="carousel slide mt60" data-ride="carousel">
|
||||
<!--
|
||||
<ol class="carousel-indicators">
|
||||
<li data-target="#imageCarousel" data-slide-to="0" class="active"></li>
|
||||
<li data-target="#imageCarousel" data-slide-to="1"></li>
|
||||
<li data-target="#imageCarousel" data-slide-to="2"></li>
|
||||
-->
|
||||
<div class="carousel-inner">
|
||||
<div class="carousel-item active">
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<a href="https://apps.odoo.com/apps/modules/14.0/odoo_shopify_connector/" target="_blank">
|
||||
<div style="border-radius:10px" class="shadow-sm">
|
||||
<img src="productimage/shopify.gif" class="img-responsive" />
|
||||
<h4 class="mt0 text-truncate" style="padding:6% 4%; text-align:center; width:100%; font-weight:bold">
|
||||
Odoo Shopify Connector
|
||||
</h4>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<a href="https://apps.odoo.com/apps/modules/14.0/quickbooks_odoo_connector/" target="_blank">
|
||||
<div style="border-radius:10px" class="shadow-sm">
|
||||
<img src="productimage/quickb.gif" class="img-responsive" />
|
||||
<h4 class="mt0 text-truncate" style="padding:6% 4%; text-align:center; width:100%; font-weight:bold">
|
||||
Quickbooks Odoo Connector
|
||||
</h4>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<a href="https://apps.odoo.com/apps/modules/14.0/odoo_office_tech/" target="_blank">
|
||||
<div style="border-radius:10px" class="shadow-sm">
|
||||
<img src="productimage/office365.gif" class="img-responsive" />
|
||||
<h4 class="mt0 text-truncate" style="padding:6% 4%; text-align:center; width:100%; font-weight:bold">
|
||||
All in One Office365 Connector
|
||||
</h4>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="carousel-item">
|
||||
<div class="row">
|
||||
<div class="col-md-4">
|
||||
<a href="https://apps.odoo.com/apps/modules/14.0/warehouse_stock_restrictions/" target="_blank">
|
||||
<div style="border-radius:10px" class="shadow-sm">
|
||||
<img src="productimage/WearhouseRestrictions.gif" class="img-responsive" />
|
||||
<h4 class="mt0 text-truncate" style="padding:6% 4%; text-align:center; width:100%; font-weight:bold">
|
||||
Warehouse Restrictions
|
||||
</h4>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<a href="https://apps.odoo.com/apps/modules/14.0/user_product_restriction/" target="_blank">
|
||||
<div style="border-radius:10px" class="shadow-sm">
|
||||
<img src="productimage/productr.gif" class="img-responsive" />
|
||||
<h4 class="mt0 text-truncate" style="padding:6% 4%; text-align:center; width:100%; font-weight:bold">
|
||||
Product Restriction on Users
|
||||
</h4>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-md-4">
|
||||
<a href="https://apps.odoo.com/apps/modules/14.0/sales_reward/" target="_blank">
|
||||
<div style="border-radius:10px" class="shadow-sm">
|
||||
<img src="productimage/sale.gif" class="img-responsive" />
|
||||
<h4 class="mt0 text-truncate" style="padding:6% 4%; text-align:center; width:100%; font-weight:bold">
|
||||
Rewards or Loyalty Points for POS and Website
|
||||
</h4>
|
||||
</div>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<a class="carousel-control-prev" href="#imageCarousel" data-slide="prev" style="width:35px; color:#000; margin-left:-30px">
|
||||
<span class="carousel-control-prev-icon"><i class="fa fa-chevron-left" style="font-size:24px"></i></span>
|
||||
</a>
|
||||
<a class="carousel-control-next" href="#imageCarousel" data-slide="next" style="width:35px; color:#000; margin-right:-30px">
|
||||
<span class="carousel-control-next-icon"><i class="fa fa-chevron-right" style="font-size:24px"></i></span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<div class="contact_us_section" style="margin-top:30px;">
|
||||
<h3 style="text-align: center;margin-bottom: 20px; font-size: 20px;">Contact & Support</h3>
|
||||
<h2 style="text-align: center;margin-bottom: 40px;">Expert Ideas and ERP Solution To Help You Grow</h2>
|
||||
<p class="oe_slogan" style="font-size:18px">
|
||||
Get expert help and assistance related to the new Odoo features and all ERP Related solutions at one place.
|
||||
We offer solutions regardless the size of a business, contact us through e-mail at <a href="mailto:sales@techspawn.com">sales@techspawn.com</a>
|
||||
and get professional help that you want to build your business better.
|
||||
In case of any question regarding please reach out to us on<a href="mailto:Support@techspawn.com"> support@techspawn.com </a>
|
||||
</p>
|
||||
<div class="col-md-12" style=" display: inline-flex;">
|
||||
<div class="col-md-4"></div>
|
||||
<div class="col-md-4">
|
||||
<center><img src="logo.png" style=""></center>
|
||||
</div>
|
||||
<div class="col-md-4"></div>
|
||||
</div>
|
||||
<!-- ContactUs And Support -->
|
||||
<section class="oe_container">
|
||||
<div class="row mb64" style="display:block; margin:0 auto; width:100%; text-align:center">
|
||||
<div class="mt32" style="display:inline-block; margin:0px 10px">
|
||||
<a href="mailto:mailto:sales@techspawn.com" style="font-family:"Montserrat"">
|
||||
<h4 class="mt16 mb0" style="padding:16px 30px; font-family:"Montserrat" text-transform:uppercase; text-align:center; border-radius:10px; color:#fff; font-weight:700; background-color:#087dda">Email Us</h4>
|
||||
</a>
|
||||
</div>
|
||||
<!--
|
||||
<div class="mt32" style="display:none; margin:0px 10px">
|
||||
<a href="https://techspawn.com/connect-with-techspawn" style="font-family:"Montserrat"">
|
||||
<h4 class="mt16 mb0" style="padding:16px 17px; font-family:"Montserrat" text-transform:uppercase; text-align:center; border-radius:10px; color:#fff; font-weight:700; background-color:#ffae1f">Contact Us</h4>
|
||||
</a>
|
||||
</div>
|
||||
-->
|
||||
</div>
|
||||
|
||||
</section>
|
||||
</div>
|
BIN
warehouse_stock_restrictions/static/description/logo.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
warehouse_stock_restrictions/static/description/main.png
Normal file
After Width: | Height: | Size: 191 KiB |
BIN
warehouse_stock_restrictions/static/description/pr1.png
Normal file
After Width: | Height: | Size: 156 KiB |
BIN
warehouse_stock_restrictions/static/description/pr2.png
Normal file
After Width: | Height: | Size: 166 KiB |
BIN
warehouse_stock_restrictions/static/description/pr3.png
Normal file
After Width: | Height: | Size: 169 KiB |
BIN
warehouse_stock_restrictions/static/description/pr4.png
Normal file
After Width: | Height: | Size: 164 KiB |
After Width: | Height: | Size: 1.7 MiB |
After Width: | Height: | Size: 440 KiB |
After Width: | Height: | Size: 1.5 MiB |
After Width: | Height: | Size: 467 KiB |
After Width: | Height: | Size: 1,002 KiB |
After Width: | Height: | Size: 605 KiB |
BIN
warehouse_stock_restrictions/static/description/set_group.png
Normal file
After Width: | Height: | Size: 130 KiB |
BIN
warehouse_stock_restrictions/static/description/skype.png
Normal file
After Width: | Height: | Size: 43 KiB |
BIN
warehouse_stock_restrictions/static/description/user1.png
Normal file
After Width: | Height: | Size: 83 KiB |
BIN
warehouse_stock_restrictions/static/description/user2.png
Normal file
After Width: | Height: | Size: 50 KiB |
BIN
warehouse_stock_restrictions/static/description/user3.png
Normal file
After Width: | Height: | Size: 64 KiB |
BIN
warehouse_stock_restrictions/static/description/user4.png
Normal file
After Width: | Height: | Size: 140 KiB |
BIN
warehouse_stock_restrictions/static/description/user5.png
Normal file
After Width: | Height: | Size: 157 KiB |
BIN
warehouse_stock_restrictions/static/description/user6.png
Normal file
After Width: | Height: | Size: 164 KiB |
BIN
warehouse_stock_restrictions/static/description/warehouse.png
Normal file
After Width: | Height: | Size: 160 KiB |
BIN
warehouse_stock_restrictions/static/description/warehouse0.png
Normal file
After Width: | Height: | Size: 167 KiB |
BIN
warehouse_stock_restrictions/static/description/warehouse1.png
Normal file
After Width: | Height: | Size: 167 KiB |
BIN
warehouse_stock_restrictions/static/description/warehouse2.png
Normal file
After Width: | Height: | Size: 140 KiB |
44
warehouse_stock_restrictions/stock.py
Normal file
|
@ -0,0 +1,44 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
|
||||
from openerp import models, fields, api, _
|
||||
from openerp.exceptions import Warning
|
||||
|
||||
class ResUsers(models.Model):
|
||||
_inherit = 'res.users'
|
||||
|
||||
restrict_locations = fields.Boolean('Restrict Location')
|
||||
|
||||
stock_location_ids = fields.Many2many(
|
||||
'stock.location',
|
||||
'location_security_stock_location_users',
|
||||
'user_id',
|
||||
'location_id',
|
||||
'Stock Locations')
|
||||
|
||||
default_picking_type_ids = fields.Many2many(
|
||||
'stock.picking.type', 'stock_picking_type_users_rel',
|
||||
'user_id', 'picking_type_id', string='Default Warehouse Operations')
|
||||
|
||||
|
||||
class stock_move(models.Model):
|
||||
_inherit = 'stock.move'
|
||||
|
||||
@api.one
|
||||
@api.constrains('state', 'location_id', 'location_dest_id')
|
||||
def check_user_location_rights(self):
|
||||
if self.state == 'draft':
|
||||
return True
|
||||
user_locations = self.env.user.stock_location_ids
|
||||
print(user_locations)
|
||||
print("Checking access %s" %self.env.user.default_picking_type_ids)
|
||||
if self.env.user.restrict_locations:
|
||||
message = _(
|
||||
'Invalid Location. You cannot process this move since you do '
|
||||
'not control the location "%s". '
|
||||
'Please contact your Adminstrator.')
|
||||
if self.location_id not in user_locations:
|
||||
raise Warning(message % self.location_id.name)
|
||||
elif self.location_dest_id not in user_locations:
|
||||
raise Warning(message % self.location_dest_id.name)
|
||||
|
||||
|
35
warehouse_stock_restrictions/users_view.xml
Normal file
|
@ -0,0 +1,35 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<openerp>
|
||||
<data>
|
||||
<record id="view_users_form" model="ir.ui.view">
|
||||
<field name="name">usability.default_warehouse.res.users.form</field>
|
||||
<field name="model">res.users</field>
|
||||
<field name="inherit_id" ref="base.view_users_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<group name="messaging" position="before">
|
||||
<group string="Warehouse Restrictions" attrs="{'invisible': [('login','=', 'admin')]}">
|
||||
<field name="default_picking_type_ids" widget="many2many_tags" attrs="{'invisible': [('login','=', 'admin')]}"/>
|
||||
</group>
|
||||
</group>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_location_security_users_form" model="ir.ui.view">
|
||||
<field name="name">location_security.users.form</field>
|
||||
<field name="model">res.users</field>
|
||||
<field name="inherit_id" ref="base.view_users_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<group name="messaging" position="before">
|
||||
<group string="Locations" attrs="{'invisible': [('login','=', 'admin')]}">
|
||||
<field name="restrict_locations" attrs="{'invisible': [('login','=', 'admin')]}"/>
|
||||
</group>
|
||||
</group>
|
||||
<notebook>
|
||||
<page string="Allowed Stock Locations" attrs="{'invisible': [('restrict_locations','!=', True)]}">
|
||||
<field name="stock_location_ids" nolabel="1" colspan="2"/>
|
||||
</page>
|
||||
</notebook>
|
||||
</field>
|
||||
</record>
|
||||
</data>
|
||||
</openerp>
|