From 1717cd03a58e4ccce6f9ee3a4fb5382b4c21861b Mon Sep 17 00:00:00 2001 From: David Vidal Date: Wed, 11 Jul 2018 13:08:59 +0200 Subject: [PATCH 01/35] [ADD] sale_margin_security: New module (#37) --- sale_margin_security/README.rst | 90 ++++ sale_margin_security/__init__.py | 0 sale_margin_security/__manifest__.py | 19 + .../i18n/sale_margin_security.pot | 20 + sale_margin_security/readme/CONFIGURE.rst | 5 + sale_margin_security/readme/CONTRIBUTORS.rst | 2 + sale_margin_security/readme/DESCRIPTION.rst | 2 + sale_margin_security/readme/USAGE.rst | 2 + .../sale_margin_security_security.xml | 11 + .../static/description/icon.png | Bin 0 -> 9455 bytes .../static/description/index.html | 437 ++++++++++++++++++ .../views/sale_margin_security_view.xml | 19 + 12 files changed, 607 insertions(+) create mode 100644 sale_margin_security/README.rst create mode 100644 sale_margin_security/__init__.py create mode 100644 sale_margin_security/__manifest__.py create mode 100644 sale_margin_security/i18n/sale_margin_security.pot create mode 100644 sale_margin_security/readme/CONFIGURE.rst create mode 100644 sale_margin_security/readme/CONTRIBUTORS.rst create mode 100644 sale_margin_security/readme/DESCRIPTION.rst create mode 100644 sale_margin_security/readme/USAGE.rst create mode 100644 sale_margin_security/security/sale_margin_security_security.xml create mode 100644 sale_margin_security/static/description/icon.png create mode 100644 sale_margin_security/static/description/index.html create mode 100644 sale_margin_security/views/sale_margin_security_view.xml diff --git a/sale_margin_security/README.rst b/sale_margin_security/README.rst new file mode 100644 index 00000000..ac871b29 --- /dev/null +++ b/sale_margin_security/README.rst @@ -0,0 +1,90 @@ +==================== +Sale Margin Security +==================== + +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! This file is generated by oca-gen-addon-readme !! + !! changes will be overwritten. !! + !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png + :target: https://odoo-community.org/page/development-status + :alt: Beta +.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png + :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html + :alt: License: AGPL-3 +.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fmargin--analysis-lightgray.png?logo=github + :target: https://github.com/OCA/margin-analysis/tree/11.0/sale_margin_security + :alt: OCA/margin-analysis +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/margin-analysis-11-0/margin-analysis-11-0-sale_margin_security + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png + :target: https://runbot.odoo-community.org/runbot/132/11.0 + :alt: Try me on Runbot + +|badge1| |badge2| |badge3| |badge4| |badge5| + +This module allows to restrict the access to sale margin fields to a specific +security group of users. + +**Table of contents** + +.. contents:: + :local: + +Configuration +============= + +To grant Sales Margin view privileges to a user: + +#. Go to *Settings > Users & Companies > Users*. +#. Select the user. +#. Set *Show Sale Margin* on. + +Usage +===== + +Only the users in the group *Show Sale Margin* will be able to see sale margin +related fields in the sale lines like `margin` or `purchase_price`. + +Bug Tracker +=========== + +Bugs are tracked on `GitHub Issues `_. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us smashing it by providing a detailed and welcomed +`feedback `_. + +Do not contact contributors directly about support or help with technical issues. + +Credits +======= + +Authors +~~~~~~~ + +* Tecnativa + +Contributors +~~~~~~~~~~~~ + +* Sergio Teruel +* David Vidal + +Maintainers +~~~~~~~~~~~ + +This module is maintained by the OCA. + +.. image:: https://odoo-community.org/logo.png + :alt: Odoo Community Association + :target: https://odoo-community.org + +OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use. + +This module is part of the `OCA/margin-analysis `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/sale_margin_security/__init__.py b/sale_margin_security/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/sale_margin_security/__manifest__.py b/sale_margin_security/__manifest__.py new file mode 100644 index 00000000..3cb41bb3 --- /dev/null +++ b/sale_margin_security/__manifest__.py @@ -0,0 +1,19 @@ +# Copyright 2018 Tecnativa - Sergio Teruel +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +{ + "name": "Sale Margin Security", + "version": "11.0.1.0.0", + "author": 'Tecnativa,' + 'Odoo Community Association (OCA)', + "website": 'https://github.com/OCA/margin-analysis', + "category": "Sales", + "license": "AGPL-3", + "depends": [ + "sale_margin", + ], + "data": [ + 'security/sale_margin_security_security.xml', + 'views/sale_margin_security_view.xml', + ], + 'installable': True, +} diff --git a/sale_margin_security/i18n/sale_margin_security.pot b/sale_margin_security/i18n/sale_margin_security.pot new file mode 100644 index 00000000..f773e094 --- /dev/null +++ b/sale_margin_security/i18n/sale_margin_security.pot @@ -0,0 +1,20 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_margin_security +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 11.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: <>\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: sale_margin_security +#: model:res.groups,name:sale_margin_security.group_sale_margin_security +msgid "Show Sale Margin" +msgstr "" + diff --git a/sale_margin_security/readme/CONFIGURE.rst b/sale_margin_security/readme/CONFIGURE.rst new file mode 100644 index 00000000..67490e02 --- /dev/null +++ b/sale_margin_security/readme/CONFIGURE.rst @@ -0,0 +1,5 @@ +To grant Sales Margin view privileges to a user: + +#. Go to *Settings > Users & Companies > Users*. +#. Select the user. +#. Set *Show Sale Margin* on. diff --git a/sale_margin_security/readme/CONTRIBUTORS.rst b/sale_margin_security/readme/CONTRIBUTORS.rst new file mode 100644 index 00000000..5505ba54 --- /dev/null +++ b/sale_margin_security/readme/CONTRIBUTORS.rst @@ -0,0 +1,2 @@ +* Sergio Teruel +* David Vidal diff --git a/sale_margin_security/readme/DESCRIPTION.rst b/sale_margin_security/readme/DESCRIPTION.rst new file mode 100644 index 00000000..a39ec69b --- /dev/null +++ b/sale_margin_security/readme/DESCRIPTION.rst @@ -0,0 +1,2 @@ +This module allows to restrict the access to sale margin fields to a specific +security group of users. diff --git a/sale_margin_security/readme/USAGE.rst b/sale_margin_security/readme/USAGE.rst new file mode 100644 index 00000000..b4c33b68 --- /dev/null +++ b/sale_margin_security/readme/USAGE.rst @@ -0,0 +1,2 @@ +Only the users in the group *Show Sale Margin* will be able to see sale margin +related fields in the sale lines like `margin` or `purchase_price`. diff --git a/sale_margin_security/security/sale_margin_security_security.xml b/sale_margin_security/security/sale_margin_security_security.xml new file mode 100644 index 00000000..f5462210 --- /dev/null +++ b/sale_margin_security/security/sale_margin_security_security.xml @@ -0,0 +1,11 @@ + + + + + + Show Sale Margin + + + + diff --git a/sale_margin_security/static/description/icon.png b/sale_margin_security/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d GIT binary patch literal 9455 zcmW++2RxMjAAjx~&dlBk9S+%}OXg)AGE&Cb*&}d0jUxM@u(PQx^-s)697TX`ehR4?GS^qbkof1cslKgkU)h65qZ9Oc=ml_0temigYLJfnz{IDzUf>bGs4N!v3=Z3jMq&A#7%rM5eQ#dc?k~! zVpnB`o+K7|Al`Q_U;eD$B zfJtP*jH`siUq~{KE)`jP2|#TUEFGRryE2`i0**z#*^6~AI|YzIWy$Cu#CSLW3q=GA z6`?GZymC;dCPk~rBS%eCb`5OLr;RUZ;D`}um=H)BfVIq%7VhiMr)_#G0N#zrNH|__ zc+blN2UAB0=617@>_u;MPHN;P;N#YoE=)R#i$k_`UAA>WWCcEVMh~L_ zj--gtp&|K1#58Yz*AHCTMziU1Jzt_jG0I@qAOHsk$2}yTmVkBp_eHuY$A9)>P6o~I z%aQ?!(GqeQ-Y+b0I(m9pwgi(IIZZzsbMv+9w{PFtd_<_(LA~0H(xz{=FhLB@(1&qHA5EJw1>>=%q2f&^X>IQ{!GJ4e9U z&KlB)z(84HmNgm2hg2C0>WM{E(DdPr+EeU_N@57;PC2&DmGFW_9kP&%?X4}+xWi)( z;)z%wI5>D4a*5XwD)P--sPkoY(a~WBw;E~AW`Yue4kFa^LM3X`8x|}ZUeMnqr}>kH zG%WWW>3ml$Yez?i%)2pbKPI7?5o?hydokgQyZsNEr{a|mLdt;X2TX(#B1j35xPnPW z*bMSSOauW>o;*=kO8ojw91VX!qoOQb)zHJ!odWB}d+*K?#sY_jqPdg{Sm2HdYzdEx zOGVPhVRTGPtv0o}RfVP;Nd(|CB)I;*t&QO8h zFfekr30S!-LHmV_Su-W+rEwYXJ^;6&3|L$mMC8*bQptyOo9;>Qb9Q9`ySe3%V$A*9 zeKEe+b0{#KWGp$F+tga)0RtI)nhMa-K@JS}2krK~n8vJ=Ngm?R!9G<~RyuU0d?nz# z-5EK$o(!F?hmX*2Yt6+coY`6jGbb7tF#6nHA zuKk=GGJ;ZwON1iAfG$E#Y7MnZVmrY|j0eVI(DN_MNFJmyZ|;w4tf@=CCDZ#5N_0K= z$;R~bbk?}TpfDjfB&aiQ$VA}s?P}xPERJG{kxk5~R`iRS(SK5d+Xs9swCozZISbnS zk!)I0>t=A<-^z(cmSFz3=jZ23u13X><0b)P)^1T_))Kr`e!-pb#q&J*Q`p+B6la%C zuVl&0duN<;uOsB3%T9Fp8t{ED108<+W(nOZd?gDnfNBC3>M8WE61$So|P zVvqH0SNtDTcsUdzaMDpT=Ty0pDHHNL@Z0w$Y`XO z2M-_r1S+GaH%pz#Uy0*w$Vdl=X=rQXEzO}d6J^R6zjM1u&c9vYLvLp?W7w(?np9x1 zE_0JSAJCPB%i7p*Wvg)pn5T`8k3-uR?*NT|J`eS#_#54p>!p(mLDvmc-3o0mX*mp_ zN*AeS<>#^-{S%W<*mz^!X$w_2dHWpcJ6^j64qFBft-o}o_Vx80o0>}Du;>kLts;$8 zC`7q$QI(dKYG`Wa8#wl@V4jVWBRGQ@1dr-hstpQL)Tl+aqVpGpbSfN>5i&QMXfiZ> zaA?T1VGe?rpQ@;+pkrVdd{klI&jVS@I5_iz!=UMpTsa~mBga?1r}aRBm1WS;TT*s0f0lY=JBl66Upy)-k4J}lh=P^8(SXk~0xW=T9v*B|gzIhN z>qsO7dFd~mgxAy4V?&)=5ieYq?zi?ZEoj)&2o)RLy=@hbCRcfT5jigwtQGE{L*8<@Yd{zg;CsL5mvzfDY}P-wos_6PfprFVaeqNE%h zKZhLtcQld;ZD+>=nqN~>GvROfueSzJD&BE*}XfU|H&(FssBqY=hPCt`d zH?@s2>I(|;fcW&YM6#V#!kUIP8$Nkdh0A(bEVj``-AAyYgwY~jB zT|I7Bf@%;7aL7Wf4dZ%VqF$eiaC38OV6oy3Z#TER2G+fOCd9Iaoy6aLYbPTN{XRPz z;U!V|vBf%H!}52L2gH_+j;`bTcQRXB+y9onc^wLm5wi3-Be}U>k_u>2Eg$=k!(l@I zcCg+flakT2Nej3i0yn+g+}%NYb?ta;R?(g5SnwsQ49U8Wng8d|{B+lyRcEDvR3+`O{zfmrmvFrL6acVP%yG98X zo&+VBg@px@i)%o?dG(`T;n*$S5*rnyiR#=wW}}GsAcfyQpE|>a{=$Hjg=-*_K;UtD z#z-)AXwSRY?OPefw^iI+ z)AXz#PfEjlwTes|_{sB?4(O@fg0AJ^g8gP}ex9Ucf*@_^J(s_5jJV}c)s$`Myn|Kd z$6>}#q^n{4vN@+Os$m7KV+`}c%4)4pv@06af4-x5#wj!KKb%caK{A&Y#Rfs z-po?Dcb1({W=6FKIUirH&(yg=*6aLCekcKwyfK^JN5{wcA3nhO(o}SK#!CINhI`-I z1)6&n7O&ZmyFMuNwvEic#IiOAwNkR=u5it{B9n2sAJV5pNhar=j5`*N!Na;c7g!l$ z3aYBqUkqqTJ=Re-;)s!EOeij=7SQZ3Hq}ZRds%IM*PtM$wV z@;rlc*NRK7i3y5BETSKuumEN`Xu_8GP1Ri=OKQ$@I^ko8>H6)4rjiG5{VBM>B|%`&&s^)jS|-_95&yc=GqjNo{zFkw%%HHhS~e=s zD#sfS+-?*t|J!+ozP6KvtOl!R)@@-z24}`9{QaVLD^9VCSR2b`b!KC#o;Ki<+wXB6 zx3&O0LOWcg4&rv4QG0)4yb}7BFSEg~=IR5#ZRj8kg}dS7_V&^%#Do==#`u zpy6{ox?jWuR(;pg+f@mT>#HGWHAJRRDDDv~@(IDw&R>9643kK#HN`!1vBJHnC+RM&yIh8{gG2q zA%e*U3|N0XSRa~oX-3EAneep)@{h2vvd3Xvy$7og(sayr@95+e6~Xvi1tUqnIxoIH zVWo*OwYElb#uyW{Imam6f2rGbjR!Y3`#gPqkv57dB6K^wRGxc9B(t|aYDGS=m$&S!NmCtrMMaUg(c zc2qC=2Z`EEFMW-me5B)24AqF*bV5Dr-M5ig(l-WPS%CgaPzs6p_gnCIvTJ=Y<6!gT zVt@AfYCzjjsMEGi=rDQHo0yc;HqoRNnNFeWZgcm?f;cp(6CNylj36DoL(?TS7eU#+ z7&mfr#y))+CJOXQKUMZ7QIdS9@#-}7y2K1{8)cCt0~-X0O!O?Qx#E4Og+;A2SjalQ zs7r?qn0H044=sDN$SRG$arw~n=+T_DNdSrarmu)V6@|?1-ZB#hRn`uilTGPJ@fqEy zGt(f0B+^JDP&f=r{#Y_wi#AVDf-y!RIXU^0jXsFpf>=Ji*TeqSY!H~AMbJdCGLhC) zn7Rx+sXw6uYj;WRYrLd^5IZq@6JI1C^YkgnedZEYy<&4(z%Q$5yv#Boo{AH8n$a zhb4Y3PWdr269&?V%uI$xMcUrMzl=;w<_nm*qr=c3Rl@i5wWB;e-`t7D&c-mcQl7x! zZWB`UGcw=Y2=}~wzrfLx=uet<;m3~=8I~ZRuzvMQUQdr+yTV|ATf1Uuomr__nDf=X zZ3WYJtHp_ri(}SQAPjv+Y+0=fH4krOP@S&=zZ-t1jW1o@}z;xk8 z(Nz1co&El^HK^NrhVHa-_;&88vTU>_J33=%{if;BEY*J#1n59=07jrGQ#IP>@u#3A z;!q+E1Rj3ZJ+!4bq9F8PXJ@yMgZL;>&gYA0%_Kbi8?S=XGM~dnQZQ!yBSgcZhY96H zrWnU;k)qy`rX&&xlDyA%(a1Hhi5CWkmg(`Gb%m(HKi-7Z!LKGRP_B8@`7&hdDy5n= z`OIxqxiVfX@OX1p(mQu>0Ai*v_cTMiw4qRt3~NBvr9oBy0)r>w3p~V0SCm=An6@3n)>@z!|o-$HvDK z|3D2ZMJkLE5loMKl6R^ez@Zz%S$&mbeoqH5`Bb){Ei21q&VP)hWS2tjShfFtGE+$z zzCR$P#uktu+#!w)cX!lWN1XU%K-r=s{|j?)Akf@q#3b#{6cZCuJ~gCxuMXRmI$nGtnH+-h z+GEi!*X=AP<|fG`1>MBdTb?28JYc=fGvAi2I<$B(rs$;eoJCyR6_bc~p!XR@O-+sD z=eH`-ye})I5ic1eL~TDmtfJ|8`0VJ*Yr=hNCd)G1p2MMz4C3^Mj?7;!w|Ly%JqmuW zlIEW^Ft%z?*|fpXda>Jr^1noFZEwFgVV%|*XhH@acv8rdGxeEX{M$(vG{Zw+x(ei@ zmfXb22}8-?Fi`vo-YVrTH*C?a8%M=Hv9MqVH7H^J$KsD?>!SFZ;ZsvnHr_gn=7acz z#W?0eCdVhVMWN12VV^$>WlQ?f;P^{(&pYTops|btm6aj>_Uz+hqpGwB)vWp0Cf5y< zft8-je~nn?W11plq}N)4A{l8I7$!ks_x$PXW-2XaRFswX_BnF{R#6YIwMhAgd5F9X zGmwdadS6(a^fjHtXg8=l?Rc0Sm%hk6E9!5cLVloEy4eh(=FwgP`)~I^5~pBEWo+F6 zSf2ncyMurJN91#cJTy_u8Y}@%!bq1RkGC~-bV@SXRd4F{R-*V`bS+6;W5vZ(&+I<9$;-V|eNfLa5n-6% z2(}&uGRF;p92eS*sE*oR$@pexaqr*meB)VhmIg@h{uzkk$9~qh#cHhw#>O%)b@+(| z^IQgqzuj~Sk(J;swEM-3TrJAPCq9k^^^`q{IItKBRXYe}e0Tdr=Huf7da3$l4PdpwWDop%^}n;dD#K4s#DYA8SHZ z&1!riV4W4R7R#C))JH1~axJ)RYnM$$lIR%6fIVA@zV{XVyx}C+a-Dt8Y9M)^KU0+H zR4IUb2CJ{Hg>CuaXtD50jB(_Tcx=Z$^WYu2u5kubqmwp%drJ6 z?Fo40g!Qd<-l=TQxqHEOuPX0;^z7iX?Ke^a%XT<13TA^5`4Xcw6D@Ur&VT&CUe0d} z1GjOVF1^L@>O)l@?bD~$wzgf(nxX1OGD8fEV?TdJcZc2KoUe|oP1#=$$7ee|xbY)A zDZq+cuTpc(fFdj^=!;{k03C69lMQ(|>uhRfRu%+!k&YOi-3|1QKB z z?n?eq1XP>p-IM$Z^C;2L3itnbJZAip*Zo0aw2bs8@(s^~*8T9go!%dHcAz2lM;`yp zD=7&xjFV$S&5uDaiScyD?B-i1ze`+CoRtz`Wn+Zl&#s4&}MO{@N!ufrzjG$B79)Y2d3tBk&)TxUTw@QS0TEL_?njX|@vq?Uz(nBFK5Pq7*xj#u*R&i|?7+6# z+|r_n#SW&LXhtheZdah{ZVoqwyT{D>MC3nkFF#N)xLi{p7J1jXlmVeb;cP5?e(=f# zuT7fvjSbjS781v?7{)-X3*?>tq?)Yd)~|1{BDS(pqC zC}~H#WXlkUW*H5CDOo<)#x7%RY)A;ShGhI5s*#cRDA8YgqG(HeKDx+#(ZQ?386dv! zlXCO)w91~Vw4AmOcATuV653fa9R$fyK8ul%rG z-wfS zihugoZyr38Im?Zuh6@RcF~t1anQu7>#lPpb#}4cOA!EM11`%f*07RqOVkmX{p~KJ9 z^zP;K#|)$`^Rb{rnHGH{~>1(fawV0*Z#)}M`m8-?ZJV<+e}s9wE# z)l&az?w^5{)`S(%MRzxdNqrs1n*-=jS^_jqE*5XDrA0+VE`5^*p3CuM<&dZEeCjoz zR;uu_H9ZPZV|fQq`Cyw4nscrVwi!fE6ciMmX$!_hN7uF;jjKG)d2@aC4ropY)8etW=xJvni)8eHi`H$%#zn^WJ5NLc-rqk|u&&4Z6fD_m&JfSI1Bvb?b<*n&sfl0^t z=HnmRl`XrFvMKB%9}>PaA`m-fK6a0(8=qPkWS5bb4=v?XcWi&hRY?O5HdulRi4?fN zlsJ*N-0Qw+Yic@s0(2uy%F@ib;GjXt01Fmx5XbRo6+n|pP(&nodMoap^z{~q ziEeaUT@Mxe3vJSfI6?uLND(CNr=#^W<1b}jzW58bIfyWTDle$mmS(|x-0|2UlX+9k zQ^EX7Nw}?EzVoBfT(-LT|=9N@^hcn-_p&sqG z&*oVs2JSU+N4ZD`FhCAWaS;>|wH2G*Id|?pa#@>tyxX`+4HyIArWDvVrX)2WAOQff z0qyHu&-S@i^MS-+j--!pr4fPBj~_8({~e1bfcl0wI1kaoN>mJL6KUPQm5N7lB(ui1 zE-o%kq)&djzWJ}ob<-GfDlkB;F31j-VHKvQUGQ3sp`CwyGJk_i!y^sD0fqC@$9|jO zOqN!r!8-p==F@ZVP=U$qSpY(gQ0)59P1&t@y?5rvg<}E+GB}26NYPp4f2YFQrQtot5mn3wu_qprZ=>Ig-$ zbW26Ws~IgY>}^5w`vTB(G`PTZaDiGBo5o(tp)qli|NeV( z@H_=R8V39rt5J5YB2Ky?4eJJ#b`_iBe2ot~6%7mLt5t8Vwi^Jy7|jWXqa3amOIoRb zOr}WVFP--DsS`1WpN%~)t3R!arKF^Q$e12KEqU36AWwnCBICpH4XCsfnyrHr>$I$4 z!DpKX$OKLWarN7nv@!uIA+~RNO)l$$w}p(;b>mx8pwYvu;dD_unryX_NhT8*Tj>BTrTTL&!?O+%Rv;b?B??gSzdp?6Uug9{ zd@V08Z$BdI?fpoCS$)t4mg4rT8Q_I}h`0d-vYZ^|dOB*Q^S|xqTV*vIg?@fVFSmMpaw0qtTRbx} z({Pg?#{2`sc9)M5N$*N|4;^t$+QP?#mov zGVC@I*lBVrOU-%2y!7%)fAKjpEFsgQc4{amtiHb95KQEwvf<(3T<9-Zm$xIew#P22 zc2Ix|App^>v6(3L_MCU0d3W##AB0M~3D00EWoKZqsJYT(#@w$Y_H7G22M~ApVFTRHMI_3be)Lkn#0F*V8Pq zc}`Cjy$bE;FJ6H7p=0y#R>`}-m4(0F>%@P|?7fx{=R^uFdISRnZ2W_xQhD{YuR3t< z{6yxu=4~JkeA;|(J6_nv#>Nvs&FuLA&PW^he@t(UwFFE8)|a!R{`E`K`i^ZnyE4$k z;(749Ix|oi$c3QbEJ3b~D_kQsPz~fIUKym($a_7dJ?o+40*OLl^{=&oq$<#Q(yyrp z{J-FAniyAw9tPbe&IhQ|a`DqFTVQGQ&Gq3!C2==4x{6EJwiPZ8zub-iXoUtkJiG{} zPaR&}_fn8_z~(=;5lD-aPWD3z8PZS@AaUiomF!G8I}Mf>e~0g#BelA-5#`cj;O5>N Xviia!U7SGha1wx#SCgwmn*{w2TRX*I literal 0 HcmV?d00001 diff --git a/sale_margin_security/static/description/index.html b/sale_margin_security/static/description/index.html new file mode 100644 index 00000000..a9adf757 --- /dev/null +++ b/sale_margin_security/static/description/index.html @@ -0,0 +1,437 @@ + + + + + + +Sale Margin Security + + + +
+

Sale Margin Security

+ + +

Beta License: AGPL-3 OCA/margin-analysis Translate me on Weblate Try me on Runbot

+

This module allows to restrict the access to sale margin fields to a specific +security group of users.

+

Table of contents

+ +
+

Configuration

+

To grant Sales Margin view privileges to a user:

+
    +
  1. Go to Settings > Users & Companies > Users.
  2. +
  3. Select the user.
  4. +
  5. Set Show Sale Margin on.
  6. +
+
+
+

Usage

+

Only the users in the group Show Sale Margin will be able to see sale margin +related fields in the sale lines like margin or purchase_price.

+
+
+

Bug Tracker

+

Bugs are tracked on GitHub Issues. +In case of trouble, please check there if your issue has already been reported. +If you spotted it first, help us smashing it by providing a detailed and welcomed +feedback.

+

Do not contact contributors directly about support or help with technical issues.

+
+
+

Credits

+
+

Authors

+
    +
  • Tecnativa
  • +
+
+ +
+

Maintainers

+

This module is maintained by the OCA.

+Odoo Community Association +

OCA, or the Odoo Community Association, is a nonprofit organization whose +mission is to support the collaborative development of Odoo features and +promote its widespread use.

+

This module is part of the OCA/margin-analysis project on GitHub.

+

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

+
+
+
+ + diff --git a/sale_margin_security/views/sale_margin_security_view.xml b/sale_margin_security/views/sale_margin_security_view.xml new file mode 100644 index 00000000..688b21cc --- /dev/null +++ b/sale_margin_security/views/sale_margin_security_view.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + From 13b96bd221d5fa982c5c2e6396b2fec44960b533 Mon Sep 17 00:00:00 2001 From: Sergio Teruel Date: Wed, 6 Nov 2019 21:21:19 +0100 Subject: [PATCH 02/35] [MIG] sale_margin_security: Migration to v12.0 --- sale_margin_security/README.rst | 22 +++++++++++++------ sale_margin_security/__manifest__.py | 4 +++- .../i18n/sale_margin_security.pot | 2 +- .../static/description/index.html | 8 ++++--- 4 files changed, 24 insertions(+), 12 deletions(-) diff --git a/sale_margin_security/README.rst b/sale_margin_security/README.rst index ac871b29..22f43084 100644 --- a/sale_margin_security/README.rst +++ b/sale_margin_security/README.rst @@ -7,20 +7,20 @@ Sale Margin Security !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png +.. |badge1| image:: https://img.shields.io/badge/maturity-Production%2FStable-green.png :target: https://odoo-community.org/page/development-status - :alt: Beta + :alt: Production/Stable .. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fmargin--analysis-lightgray.png?logo=github - :target: https://github.com/OCA/margin-analysis/tree/11.0/sale_margin_security + :target: https://github.com/OCA/margin-analysis/tree/12.0/sale_margin_security :alt: OCA/margin-analysis .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/margin-analysis-11-0/margin-analysis-11-0-sale_margin_security + :target: https://translation.odoo-community.org/projects/margin-analysis-12-0/margin-analysis-12-0-sale_margin_security :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/132/11.0 + :target: https://runbot.odoo-community.org/runbot/132/12.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -54,7 +54,7 @@ Bug Tracker Bugs are tracked on `GitHub Issues `_. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -85,6 +85,14 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use. -This module is part of the `OCA/margin-analysis `_ project on GitHub. +.. |maintainer-sergio-teruel| image:: https://github.com/sergio-teruel.png?size=40px + :target: https://github.com/sergio-teruel + :alt: sergio-teruel + +Current `maintainer `__: + +|maintainer-sergio-teruel| + +This module is part of the `OCA/margin-analysis `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/sale_margin_security/__manifest__.py b/sale_margin_security/__manifest__.py index 3cb41bb3..df276100 100644 --- a/sale_margin_security/__manifest__.py +++ b/sale_margin_security/__manifest__.py @@ -2,12 +2,14 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { "name": "Sale Margin Security", - "version": "11.0.1.0.0", + "version": "12.0.1.0.0", "author": 'Tecnativa,' 'Odoo Community Association (OCA)', "website": 'https://github.com/OCA/margin-analysis', "category": "Sales", "license": "AGPL-3", + "development_status": "Production/Stable", + "maintainers": ["sergio-teruel"], "depends": [ "sale_margin", ], diff --git a/sale_margin_security/i18n/sale_margin_security.pot b/sale_margin_security/i18n/sale_margin_security.pot index f773e094..9b0ab1bf 100644 --- a/sale_margin_security/i18n/sale_margin_security.pot +++ b/sale_margin_security/i18n/sale_margin_security.pot @@ -4,7 +4,7 @@ # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 11.0\n" +"Project-Id-Version: Odoo Server 12.0\n" "Report-Msgid-Bugs-To: \n" "Last-Translator: <>\n" "Language-Team: \n" diff --git a/sale_margin_security/static/description/index.html b/sale_margin_security/static/description/index.html index a9adf757..bbbb7bdb 100644 --- a/sale_margin_security/static/description/index.html +++ b/sale_margin_security/static/description/index.html @@ -367,7 +367,7 @@

Sale Margin Security

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Beta License: AGPL-3 OCA/margin-analysis Translate me on Weblate Try me on Runbot

+

Production/Stable License: AGPL-3 OCA/margin-analysis Translate me on Weblate Try me on Runbot

This module allows to restrict the access to sale margin fields to a specific security group of users.

Table of contents

@@ -403,7 +403,7 @@

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed -feedback.

+feedback.

Do not contact contributors directly about support or help with technical issues.

@@ -428,7 +428,9 @@

Maintainers

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

-

This module is part of the OCA/margin-analysis project on GitHub.

+

Current maintainer:

+

sergio-teruel

+

This module is part of the OCA/margin-analysis project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

From d2ae33d55381cef80ef925d8acbe1b495a8b875d Mon Sep 17 00:00:00 2001 From: Sergio Teruel Date: Mon, 24 Feb 2020 11:29:59 +0100 Subject: [PATCH 03/35] [IMP] sale_margin_security: black, isort --- sale_margin_security/__manifest__.py | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/sale_margin_security/__manifest__.py b/sale_margin_security/__manifest__.py index df276100..7f7bef6f 100644 --- a/sale_margin_security/__manifest__.py +++ b/sale_margin_security/__manifest__.py @@ -3,19 +3,16 @@ { "name": "Sale Margin Security", "version": "12.0.1.0.0", - "author": 'Tecnativa,' - 'Odoo Community Association (OCA)', - "website": 'https://github.com/OCA/margin-analysis', + "author": "Tecnativa," "Odoo Community Association (OCA)", + "website": "https://github.com/OCA/margin-analysis", "category": "Sales", "license": "AGPL-3", "development_status": "Production/Stable", "maintainers": ["sergio-teruel"], - "depends": [ - "sale_margin", - ], + "depends": ["sale_margin"], "data": [ - 'security/sale_margin_security_security.xml', - 'views/sale_margin_security_view.xml', + "security/sale_margin_security_security.xml", + "views/sale_margin_security_view.xml", ], - 'installable': True, + "installable": True, } From 670c2c095763138efadf3c7b58f8c2a60fdb08ac Mon Sep 17 00:00:00 2001 From: Sergio Teruel Date: Mon, 24 Feb 2020 11:29:59 +0100 Subject: [PATCH 04/35] [MIG] sale_margin_security: Migration to v13.0 --- sale_margin_security/README.rst | 10 ++++----- sale_margin_security/__manifest__.py | 2 +- .../i18n/sale_margin_security.pot | 7 +++--- .../sale_margin_security_security.xml | 12 +++++----- .../static/description/index.html | 6 ++--- .../views/sale_margin_security_view.xml | 22 +++++++++++-------- 6 files changed, 30 insertions(+), 29 deletions(-) diff --git a/sale_margin_security/README.rst b/sale_margin_security/README.rst index 22f43084..f9cb2c1f 100644 --- a/sale_margin_security/README.rst +++ b/sale_margin_security/README.rst @@ -14,13 +14,13 @@ Sale Margin Security :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fmargin--analysis-lightgray.png?logo=github - :target: https://github.com/OCA/margin-analysis/tree/12.0/sale_margin_security + :target: https://github.com/OCA/margin-analysis/tree/13.0/sale_margin_security :alt: OCA/margin-analysis .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/margin-analysis-12-0/margin-analysis-12-0-sale_margin_security + :target: https://translation.odoo-community.org/projects/margin-analysis-13-0/margin-analysis-13-0-sale_margin_security :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/132/12.0 + :target: https://runbot.odoo-community.org/runbot/132/13.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -54,7 +54,7 @@ Bug Tracker Bugs are tracked on `GitHub Issues `_. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -93,6 +93,6 @@ Current `maintainer `__: |maintainer-sergio-teruel| -This module is part of the `OCA/margin-analysis `_ project on GitHub. +This module is part of the `OCA/margin-analysis `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/sale_margin_security/__manifest__.py b/sale_margin_security/__manifest__.py index 7f7bef6f..631ce5d9 100644 --- a/sale_margin_security/__manifest__.py +++ b/sale_margin_security/__manifest__.py @@ -2,7 +2,7 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { "name": "Sale Margin Security", - "version": "12.0.1.0.0", + "version": "13.0.1.0.0", "author": "Tecnativa," "Odoo Community Association (OCA)", "website": "https://github.com/OCA/margin-analysis", "category": "Sales", diff --git a/sale_margin_security/i18n/sale_margin_security.pot b/sale_margin_security/i18n/sale_margin_security.pot index 9b0ab1bf..0a8313e5 100644 --- a/sale_margin_security/i18n/sale_margin_security.pot +++ b/sale_margin_security/i18n/sale_margin_security.pot @@ -1,12 +1,12 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: -# * sale_margin_security +# * sale_margin_security # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 12.0\n" +"Project-Id-Version: Odoo Server 13.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: <>\n" +"Last-Translator: \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -17,4 +17,3 @@ msgstr "" #: model:res.groups,name:sale_margin_security.group_sale_margin_security msgid "Show Sale Margin" msgstr "" - diff --git a/sale_margin_security/security/sale_margin_security_security.xml b/sale_margin_security/security/sale_margin_security_security.xml index f5462210..8e609653 100644 --- a/sale_margin_security/security/sale_margin_security_security.xml +++ b/sale_margin_security/security/sale_margin_security_security.xml @@ -1,11 +1,9 @@ - + - - - Show Sale Margin - - - + + Show Sale Margin + + diff --git a/sale_margin_security/static/description/index.html b/sale_margin_security/static/description/index.html index bbbb7bdb..e2629323 100644 --- a/sale_margin_security/static/description/index.html +++ b/sale_margin_security/static/description/index.html @@ -367,7 +367,7 @@

Sale Margin Security

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Production/Stable License: AGPL-3 OCA/margin-analysis Translate me on Weblate Try me on Runbot

+

Production/Stable License: AGPL-3 OCA/margin-analysis Translate me on Weblate Try me on Runbot

This module allows to restrict the access to sale margin fields to a specific security group of users.

Table of contents

@@ -403,7 +403,7 @@

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed -feedback.

+feedback.

Do not contact contributors directly about support or help with technical issues.

@@ -430,7 +430,7 @@

Maintainers

promote its widespread use.

Current maintainer:

sergio-teruel

-

This module is part of the OCA/margin-analysis project on GitHub.

+

This module is part of the OCA/margin-analysis project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

diff --git a/sale_margin_security/views/sale_margin_security_view.xml b/sale_margin_security/views/sale_margin_security_view.xml index 688b21cc..42b2c7ae 100644 --- a/sale_margin_security/views/sale_margin_security_view.xml +++ b/sale_margin_security/views/sale_margin_security_view.xml @@ -1,19 +1,23 @@ - + - - + - - - + - - + - From 9c94a524b8c5739512671e40acde543711b2b814 Mon Sep 17 00:00:00 2001 From: david Date: Mon, 1 Jun 2020 16:43:58 +0200 Subject: [PATCH 05/35] [FIX] sale_margin_security: onchange product In sale_margin, when the line already exists, the purchase_price is computed with the product onchange method, so if the user doesn't have the field available in the view it's not going to get the right price. This should be fixed in v13 with the new compute fields possibilities. --- sale_margin_security/__init__.py | 1 + sale_margin_security/__manifest__.py | 2 +- .../i18n/sale_margin_security.pot | 5 ++++ sale_margin_security/models/__init__.py | 1 + sale_margin_security/models/sale_order.py | 24 +++++++++++++++++++ 5 files changed, 32 insertions(+), 1 deletion(-) create mode 100644 sale_margin_security/models/__init__.py create mode 100644 sale_margin_security/models/sale_order.py diff --git a/sale_margin_security/__init__.py b/sale_margin_security/__init__.py index e69de29b..0650744f 100644 --- a/sale_margin_security/__init__.py +++ b/sale_margin_security/__init__.py @@ -0,0 +1 @@ +from . import models diff --git a/sale_margin_security/__manifest__.py b/sale_margin_security/__manifest__.py index 631ce5d9..210bbde0 100644 --- a/sale_margin_security/__manifest__.py +++ b/sale_margin_security/__manifest__.py @@ -2,7 +2,7 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { "name": "Sale Margin Security", - "version": "13.0.1.0.0", + "version": "13.0.1.0.1", "author": "Tecnativa," "Odoo Community Association (OCA)", "website": "https://github.com/OCA/margin-analysis", "category": "Sales", diff --git a/sale_margin_security/i18n/sale_margin_security.pot b/sale_margin_security/i18n/sale_margin_security.pot index 0a8313e5..473d2336 100644 --- a/sale_margin_security/i18n/sale_margin_security.pot +++ b/sale_margin_security/i18n/sale_margin_security.pot @@ -13,6 +13,11 @@ msgstr "" "Content-Transfer-Encoding: \n" "Plural-Forms: \n" +#. module: sale_margin_security +#: model:ir.model,name:sale_margin_security.model_sale_order_line +msgid "Sales Order Line" +msgstr "" + #. module: sale_margin_security #: model:res.groups,name:sale_margin_security.group_sale_margin_security msgid "Show Sale Margin" diff --git a/sale_margin_security/models/__init__.py b/sale_margin_security/models/__init__.py new file mode 100644 index 00000000..6aacb753 --- /dev/null +++ b/sale_margin_security/models/__init__.py @@ -0,0 +1 @@ +from . import sale_order diff --git a/sale_margin_security/models/sale_order.py b/sale_margin_security/models/sale_order.py new file mode 100644 index 00000000..9305faff --- /dev/null +++ b/sale_margin_security/models/sale_order.py @@ -0,0 +1,24 @@ +# Copyright 2020 Tecnativa - David Vidal +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). +from odoo import models + + +class SaleOrderLine(models.Model): + _inherit = "sale.order.line" + + def write(self, vals): + """In sale_margin, when the line already exists, the purchase_price + is computed with the product onchange method, so if the user doesn't + have the field available in the view it's not going to get the right + price. This should be fixed in v13 with the new compute fields + possibilities. + """ + # TODO: Check if this can be done through computed writable field + res = super().write(vals) + if not vals.get("product_id") or "purchase_price" in vals: + return res + for line in self: + line.purchase_price = self._compute_margin( + line.order_id, line.product_id, line.product_uom + ) + return res From d6516711fb78d85897c71d624105583247e56e03 Mon Sep 17 00:00:00 2001 From: Harald Panten Date: Wed, 16 Dec 2020 19:31:34 +0000 Subject: [PATCH 06/35] Added translation using Weblate (Spanish) --- sale_margin_security/i18n/es.po | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 sale_margin_security/i18n/es.po diff --git a/sale_margin_security/i18n/es.po b/sale_margin_security/i18n/es.po new file mode 100644 index 00000000..f3952e58 --- /dev/null +++ b/sale_margin_security/i18n/es.po @@ -0,0 +1,25 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sale_margin_security +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 13.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" + +#. module: sale_margin_security +#: model:ir.model,name:sale_margin_security.model_sale_order_line +msgid "Sales Order Line" +msgstr "" + +#. module: sale_margin_security +#: model:res.groups,name:sale_margin_security.group_sale_margin_security +msgid "Show Sale Margin" +msgstr "" From ef1f542e47e358b10a3ccc54b08f6cd074253b2f Mon Sep 17 00:00:00 2001 From: Harald Panten Date: Wed, 16 Dec 2020 19:32:20 +0000 Subject: [PATCH 07/35] Translated using Weblate (Spanish) Currently translated at 100.0% (2 of 2 strings) Translation: margin-analysis-13.0/margin-analysis-13.0-sale_margin_security Translate-URL: https://translation.odoo-community.org/projects/margin-analysis-13-0/margin-analysis-13-0-sale_margin_security/es/ --- sale_margin_security/i18n/es.po | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sale_margin_security/i18n/es.po b/sale_margin_security/i18n/es.po index f3952e58..20ed7d9e 100644 --- a/sale_margin_security/i18n/es.po +++ b/sale_margin_security/i18n/es.po @@ -6,20 +6,22 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 13.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: Automatically generated\n" +"PO-Revision-Date: 2020-12-16 22:19+0000\n" +"Last-Translator: Harald Panten \n" "Language-Team: none\n" "Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" "Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.3.2\n" #. module: sale_margin_security #: model:ir.model,name:sale_margin_security.model_sale_order_line msgid "Sales Order Line" -msgstr "" +msgstr "Línea de pedido de venta" #. module: sale_margin_security #: model:res.groups,name:sale_margin_security.group_sale_margin_security msgid "Show Sale Margin" -msgstr "" +msgstr "Mostrar Margen de Venta" From bdcc5e9b23aa68fd24d16410a6238d1f3b875ae8 Mon Sep 17 00:00:00 2001 From: rafamar Date: Sun, 23 Oct 2022 23:23:40 +0200 Subject: [PATCH 08/35] [IMP] : black, isort, prettier --- sale_margin_security/models/sale_order.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sale_margin_security/models/sale_order.py b/sale_margin_security/models/sale_order.py index 9305faff..6cb0c7e3 100644 --- a/sale_margin_security/models/sale_order.py +++ b/sale_margin_security/models/sale_order.py @@ -8,11 +8,11 @@ class SaleOrderLine(models.Model): def write(self, vals): """In sale_margin, when the line already exists, the purchase_price - is computed with the product onchange method, so if the user doesn't - have the field available in the view it's not going to get the right - price. This should be fixed in v13 with the new compute fields - possibilities. - """ + is computed with the product onchange method, so if the user doesn't + have the field available in the view it's not going to get the right + price. This should be fixed in v13 with the new compute fields + possibilities. + """ # TODO: Check if this can be done through computed writable field res = super().write(vals) if not vals.get("product_id") or "purchase_price" in vals: From ee9a4f4b4879490bdb1dd02a32f6667c4a181ef2 Mon Sep 17 00:00:00 2001 From: rafamar Date: Sun, 23 Oct 2022 23:34:05 +0200 Subject: [PATCH 09/35] [MIG] sale_margin_security: Migration to 14.0 --- sale_margin_security/README.rst | 10 +++---- sale_margin_security/__init__.py | 2 +- sale_margin_security/__manifest__.py | 2 +- sale_margin_security/i18n/es.po | 29 +++++++++++++++++-- .../i18n/sale_margin_security.pot | 26 +++++++++++++++-- sale_margin_security/models/__init__.py | 1 - sale_margin_security/models/sale_order.py | 24 --------------- sale_margin_security/report/__init__.py | 1 + sale_margin_security/report/sale_report.py | 9 ++++++ .../static/description/index.html | 6 ++-- 10 files changed, 69 insertions(+), 41 deletions(-) delete mode 100644 sale_margin_security/models/__init__.py delete mode 100644 sale_margin_security/models/sale_order.py create mode 100644 sale_margin_security/report/__init__.py create mode 100644 sale_margin_security/report/sale_report.py diff --git a/sale_margin_security/README.rst b/sale_margin_security/README.rst index f9cb2c1f..141935fd 100644 --- a/sale_margin_security/README.rst +++ b/sale_margin_security/README.rst @@ -14,13 +14,13 @@ Sale Margin Security :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fmargin--analysis-lightgray.png?logo=github - :target: https://github.com/OCA/margin-analysis/tree/13.0/sale_margin_security + :target: https://github.com/OCA/margin-analysis/tree/14.0/sale_margin_security :alt: OCA/margin-analysis .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/margin-analysis-13-0/margin-analysis-13-0-sale_margin_security + :target: https://translation.odoo-community.org/projects/margin-analysis-14-0/margin-analysis-14-0-sale_margin_security :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/132/13.0 + :target: https://runbot.odoo-community.org/runbot/132/14.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -54,7 +54,7 @@ Bug Tracker Bugs are tracked on `GitHub Issues `_. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -93,6 +93,6 @@ Current `maintainer `__: |maintainer-sergio-teruel| -This module is part of the `OCA/margin-analysis `_ project on GitHub. +This module is part of the `OCA/margin-analysis `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/sale_margin_security/__init__.py b/sale_margin_security/__init__.py index 0650744f..4c4f242f 100644 --- a/sale_margin_security/__init__.py +++ b/sale_margin_security/__init__.py @@ -1 +1 @@ -from . import models +from . import report diff --git a/sale_margin_security/__manifest__.py b/sale_margin_security/__manifest__.py index 210bbde0..96df7e01 100644 --- a/sale_margin_security/__manifest__.py +++ b/sale_margin_security/__manifest__.py @@ -2,7 +2,7 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { "name": "Sale Margin Security", - "version": "13.0.1.0.1", + "version": "14.0.1.0.0", "author": "Tecnativa," "Odoo Community Association (OCA)", "website": "https://github.com/OCA/margin-analysis", "category": "Sales", diff --git a/sale_margin_security/i18n/es.po b/sale_margin_security/i18n/es.po index 20ed7d9e..3dadf436 100644 --- a/sale_margin_security/i18n/es.po +++ b/sale_margin_security/i18n/es.po @@ -17,11 +17,34 @@ msgstr "" "X-Generator: Weblate 4.3.2\n" #. module: sale_margin_security -#: model:ir.model,name:sale_margin_security.model_sale_order_line -msgid "Sales Order Line" -msgstr "Línea de pedido de venta" +#: model:ir.model.fields,field_description:sale_margin_security.field_sale_report__display_name +msgid "Display Name" +msgstr "" + +#. module: sale_margin_security +#: model:ir.model.fields,field_description:sale_margin_security.field_sale_report__id +msgid "ID" +msgstr "" + +#. module: sale_margin_security +#: model:ir.model.fields,field_description:sale_margin_security.field_sale_report____last_update +msgid "Last Modified on" +msgstr "" + +#. module: sale_margin_security +#: model:ir.model.fields,field_description:sale_margin_security.field_sale_report__margin +msgid "Margin" +msgstr "" + +#. module: sale_margin_security +#: model:ir.model,name:sale_margin_security.model_sale_report +msgid "Sales Analysis Report" +msgstr "" #. module: sale_margin_security #: model:res.groups,name:sale_margin_security.group_sale_margin_security msgid "Show Sale Margin" msgstr "Mostrar Margen de Venta" + +#~ msgid "Sales Order Line" +#~ msgstr "Línea de pedido de venta" diff --git a/sale_margin_security/i18n/sale_margin_security.pot b/sale_margin_security/i18n/sale_margin_security.pot index 473d2336..64421801 100644 --- a/sale_margin_security/i18n/sale_margin_security.pot +++ b/sale_margin_security/i18n/sale_margin_security.pot @@ -4,7 +4,7 @@ # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 13.0\n" +"Project-Id-Version: Odoo Server 14.0\n" "Report-Msgid-Bugs-To: \n" "Last-Translator: \n" "Language-Team: \n" @@ -14,8 +14,28 @@ msgstr "" "Plural-Forms: \n" #. module: sale_margin_security -#: model:ir.model,name:sale_margin_security.model_sale_order_line -msgid "Sales Order Line" +#: model:ir.model.fields,field_description:sale_margin_security.field_sale_report__display_name +msgid "Display Name" +msgstr "" + +#. module: sale_margin_security +#: model:ir.model.fields,field_description:sale_margin_security.field_sale_report__id +msgid "ID" +msgstr "" + +#. module: sale_margin_security +#: model:ir.model.fields,field_description:sale_margin_security.field_sale_report____last_update +msgid "Last Modified on" +msgstr "" + +#. module: sale_margin_security +#: model:ir.model.fields,field_description:sale_margin_security.field_sale_report__margin +msgid "Margin" +msgstr "" + +#. module: sale_margin_security +#: model:ir.model,name:sale_margin_security.model_sale_report +msgid "Sales Analysis Report" msgstr "" #. module: sale_margin_security diff --git a/sale_margin_security/models/__init__.py b/sale_margin_security/models/__init__.py deleted file mode 100644 index 6aacb753..00000000 --- a/sale_margin_security/models/__init__.py +++ /dev/null @@ -1 +0,0 @@ -from . import sale_order diff --git a/sale_margin_security/models/sale_order.py b/sale_margin_security/models/sale_order.py deleted file mode 100644 index 6cb0c7e3..00000000 --- a/sale_margin_security/models/sale_order.py +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 2020 Tecnativa - David Vidal -# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -from odoo import models - - -class SaleOrderLine(models.Model): - _inherit = "sale.order.line" - - def write(self, vals): - """In sale_margin, when the line already exists, the purchase_price - is computed with the product onchange method, so if the user doesn't - have the field available in the view it's not going to get the right - price. This should be fixed in v13 with the new compute fields - possibilities. - """ - # TODO: Check if this can be done through computed writable field - res = super().write(vals) - if not vals.get("product_id") or "purchase_price" in vals: - return res - for line in self: - line.purchase_price = self._compute_margin( - line.order_id, line.product_id, line.product_uom - ) - return res diff --git a/sale_margin_security/report/__init__.py b/sale_margin_security/report/__init__.py new file mode 100644 index 00000000..cd23411b --- /dev/null +++ b/sale_margin_security/report/__init__.py @@ -0,0 +1 @@ +from . import sale_report diff --git a/sale_margin_security/report/sale_report.py b/sale_margin_security/report/sale_report.py new file mode 100644 index 00000000..c2ec7f91 --- /dev/null +++ b/sale_margin_security/report/sale_report.py @@ -0,0 +1,9 @@ +from odoo import fields, models + + +class SaleReport(models.Model): + _inherit = "sale.report" + + margin = fields.Float( + groups="sale_margin_security.group_sale_margin_security", + ) diff --git a/sale_margin_security/static/description/index.html b/sale_margin_security/static/description/index.html index e2629323..a9dcc001 100644 --- a/sale_margin_security/static/description/index.html +++ b/sale_margin_security/static/description/index.html @@ -367,7 +367,7 @@

Sale Margin Security

!! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Production/Stable License: AGPL-3 OCA/margin-analysis Translate me on Weblate Try me on Runbot

+

Production/Stable License: AGPL-3 OCA/margin-analysis Translate me on Weblate Try me on Runbot

This module allows to restrict the access to sale margin fields to a specific security group of users.

Table of contents

@@ -403,7 +403,7 @@

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed -feedback.

+feedback.

Do not contact contributors directly about support or help with technical issues.

@@ -430,7 +430,7 @@

Maintainers

promote its widespread use.

Current maintainer:

sergio-teruel

-

This module is part of the OCA/margin-analysis project on GitHub.

+

This module is part of the OCA/margin-analysis project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

From 67f1f2bd9ef5c7273a1a5c5c676e31d85d545fbf Mon Sep 17 00:00:00 2001 From: CarlosRoca13 Date: Mon, 7 Nov 2022 09:07:20 +0100 Subject: [PATCH 10/35] [MIG] sale_margin_security: Migration to 15.0 --- sale_margin_security/README.rst | 17 ++++++++++------- sale_margin_security/__manifest__.py | 2 +- sale_margin_security/readme/CONTRIBUTORS.rst | 7 +++++-- .../static/description/index.html | 16 ++++++++++------ 4 files changed, 26 insertions(+), 16 deletions(-) diff --git a/sale_margin_security/README.rst b/sale_margin_security/README.rst index 141935fd..854fb400 100644 --- a/sale_margin_security/README.rst +++ b/sale_margin_security/README.rst @@ -14,13 +14,13 @@ Sale Margin Security :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fmargin--analysis-lightgray.png?logo=github - :target: https://github.com/OCA/margin-analysis/tree/14.0/sale_margin_security + :target: https://github.com/OCA/margin-analysis/tree/15.0/sale_margin_security :alt: OCA/margin-analysis .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/margin-analysis-14-0/margin-analysis-14-0-sale_margin_security + :target: https://translation.odoo-community.org/projects/margin-analysis-15-0/margin-analysis-15-0-sale_margin_security :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/132/14.0 + :target: https://runbot.odoo-community.org/runbot/132/15.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -54,7 +54,7 @@ Bug Tracker Bugs are tracked on `GitHub Issues `_. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -69,8 +69,11 @@ Authors Contributors ~~~~~~~~~~~~ -* Sergio Teruel -* David Vidal +* `Tecnativa `_ + + * Sergio Teruel + * David Vidal + * Carlos Roca Maintainers ~~~~~~~~~~~ @@ -93,6 +96,6 @@ Current `maintainer `__: |maintainer-sergio-teruel| -This module is part of the `OCA/margin-analysis `_ project on GitHub. +This module is part of the `OCA/margin-analysis `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/sale_margin_security/__manifest__.py b/sale_margin_security/__manifest__.py index 96df7e01..08187e2c 100644 --- a/sale_margin_security/__manifest__.py +++ b/sale_margin_security/__manifest__.py @@ -2,7 +2,7 @@ # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { "name": "Sale Margin Security", - "version": "14.0.1.0.0", + "version": "15.0.1.0.0", "author": "Tecnativa," "Odoo Community Association (OCA)", "website": "https://github.com/OCA/margin-analysis", "category": "Sales", diff --git a/sale_margin_security/readme/CONTRIBUTORS.rst b/sale_margin_security/readme/CONTRIBUTORS.rst index 5505ba54..5ab490f9 100644 --- a/sale_margin_security/readme/CONTRIBUTORS.rst +++ b/sale_margin_security/readme/CONTRIBUTORS.rst @@ -1,2 +1,5 @@ -* Sergio Teruel -* David Vidal +* `Tecnativa `_ + + * Sergio Teruel + * David Vidal + * Carlos Roca diff --git a/sale_margin_security/static/description/index.html b/sale_margin_security/static/description/index.html index a9dcc001..a3372cd6 100644 --- a/sale_margin_security/static/description/index.html +++ b/sale_margin_security/static/description/index.html @@ -3,7 +3,7 @@ - + Sale Margin Security