Projekt

Obecné

Profil

« Předchozí | Další » 

Revize 66225787

Přidáno uživatelem Milan Hotovec před téměř 4 roky(ů)

Final Lock fix

Zobrazit rozdíly:

src/Modules/Goal/Application/Leuze.Modules.Goal.Application.UI/Pages/Components/GoalDetailAside.razor
10 10
            {
11 11
            @if (DetailItem.SupervisorLocked && DetailItem.OwnerLocked)
12 12
            {
13
                <button class="authorize_button accepted">Schváleno</button>
13
                <button class="authorize_button accepted">@T["Approved"]</button>
14 14
            }
15 15
            else if (_provider.RequiredUserId == DetailItem.GoalDefinition.OwnerId && !DetailItem.OwnerLocked)
16 16
            {
17
                <button class="authorize_button" @onclick="SubmitGoal">Odeslat ke schválení</button>
17
        <button class="authorize_button" @onclick="SubmitGoal">@T["RequireApproval"]</button>
18 18
            }
19 19
            else if (_provider.RequiredUserId == DetailItem.GoalDefinition.OwnerId && DetailItem.OwnerLocked)
20 20
            {
21
                <button class="authorize_button">Čeká na schválení</button>
21
        <button class="authorize_button">@T["PendingApproval"]</button>
22 22
            }
23 23
            else if (_provider.RequiredUserId != DetailItem.GoalDefinition.OwnerId && DetailItem.OwnerLocked && !DetailItem.SupervisorLocked)
24 24
            {
25
                <button class="authorize_button" @onclick="AcceptGoal">Schválit</button>
26
                <button class="authorize_button" @onclick="DeclineGoal">Zamítnout</button>
25
                <button class="authorize_button" @onclick="AcceptGoal">@T["Approve"]</button>
26
                <button class="authorize_button" @onclick="DeclineGoal">@T["Decline"]</button>
27 27
            }
28 28
            @for (var i = 0; i < DetailItem.Reviews.Where(o => !o.IsFinal).ToList().Count; i++)
29 29
            {
......
39 39
            }
40 40
            @if (DetailItem.SupervisorLocked && DetailItem.OwnerLocked && DetailItem.Reviews.Count < 3)
41 41
            {
42
                <button class="authorize_button" @onclick="() => SetReviewId(Guid.NewGuid())">Vytvořit @(DetailItem.Reviews.Count < 2 ? DetailItem.Reviews.Count + 1 : "finální"). hodnocení</button>
42
        <button class="authorize_button" @onclick="() => SetReviewId(Guid.NewGuid())">@T["Create"] @(DetailItem.Reviews.Count < 2 ? DetailItem.Reviews.Count + 1 : "finální"). @T["Review"]</button>
43 43
            }
44 44
            }
45 45
        </div>
......
51 51
    </div>
52 52
    <div class="goal_detail_body">
53 53
        <div class="goal_detail_area">
54
            <input class="goal_name" type="text" placeholder="Zadejte název cíle" disabled="@(DetailItem.SupervisorLocked || DetailItem.OwnerLocked)" @bind-value="Name" />
55
            <div class="goal_description_title">Popis cíle</div>
54
            <input class="goal_name" type="text" placeholder="@T["InsertGoalName"]" disabled="@(DetailItem.SupervisorLocked || DetailItem.OwnerLocked)" @bind-value="Name" />
55
            <div class="goal_description_title">@T["GoalDescription"]</div>
56 56
            <textarea oninput='this.style.height = "";this.style.height = this.scrollHeight + "px"'
57
                      class="goal_description" placeholder="Vyplňte popis cíle" @bind="Description" disabled="@(DetailItem.SupervisorLocked || DetailItem.OwnerLocked)"></textarea>
57
                      class="goal_description" placeholder="@T["InsertGoalDescription"]" @bind="Description" disabled="@(DetailItem.SupervisorLocked || DetailItem.OwnerLocked)"></textarea>
58 58
            @if (!(DetailItem.SupervisorLocked || DetailItem.OwnerLocked))
59 59
            {
60
                <button class="edit_goal_desc" @onclick="EditGoal">Uložit změny</button>
60
        <button class="edit_goal_desc" @onclick="EditGoal"> @T["SaveChanges"]</button>
61 61
            }
62 62
        </div>
63 63
        <div class="goal_communication_area">
......
65 65
            {
66 66
                if (comment.IsSystem)
67 67
                {
68
                    <div class="goal_communication_item">
69
                        @T["User"] @comment.Creator.Name.FullName @T[comment.type.GetStringValue()] z "@comment.OldText" na "@comment.Text" <span class="date">@comment.CreatedAt.ToShortDateString() @comment.CreatedAt.ToShortTimeString()</span>
70
                    </div>
68
            <div class="goal_communication_item">
69
                @T["User"] @comment.Creator.Name.FullName @T[comment.type.GetStringValue()] @T["From"] "@comment.OldText" @T["To"] "@comment.Text" <span class="date">@comment.CreatedAt.ToShortDateString() @comment.CreatedAt.ToShortTimeString()</span>
70
            </div>
71 71
                }
72 72
                else
73 73
                {
......
101 101
            {
102 102
                <textarea class="comment-textarea noedit"
103 103
                          oninput='this.style.height = "";this.style.height = this.scrollHeight + "px"'
104
                          placeholder="Upravte komentář" @bind="CommentEditText"></textarea>
104
                          placeholder="@T["EditComment"]" @bind="CommentEditText"></textarea>
105 105
            }
106 106
        </div>
107 107
                }
......
109 109
        </div>
110 110
    </div>
111 111
    <div class="goal_detail_footer">
112
        <textarea placeholder="Přidat soukromý či veřejný komentář" @bind="CommentText"></textarea>
112
        <textarea placeholder="@T["AddCommentPublicPrivate"]" @bind="CommentText"></textarea>
113 113
        <div class="goal_comment_tools">
114 114
            <select @bind="CommentVisibility">
115
                <option value="public">Veřejný</option>
116
                <option value="private">Soukromý</option>
115
                <option value="public">@T["Public"]</option>
116
                <option value="private">@T["Private"]</option>
117 117
            </select>
118
            <button @onclick="SendComment">Přidat komentář</button>
118
            <button @onclick="SendComment">@T["AddComment"]</button>
119 119
        </div>
120 120
    </div>
121 121
</aside>
src/Modules/Goal/Application/Leuze.Modules.Goal.Application.UI/Resources/Pages/Components/GoalDetailAside.cs-CZ.resx
117 117
  <resheader name="writer">
118 118
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
119 119
  </resheader>
120
  <data name="AddComment" xml:space="preserve">
121
    <value>Přidat komentář</value>
122
  </data>
123
  <data name="AddCommentPublicPrivate" xml:space="preserve">
124
    <value>Přidat soukromý či veřejný komentář</value>
125
  </data>
126
  <data name="Approve" xml:space="preserve">
127
    <value>Schválit</value>
128
  </data>
129
  <data name="Approved" xml:space="preserve">
130
    <value>Schváleno</value>
131
  </data>
132
  <data name="Create" xml:space="preserve">
133
    <value>Vytvořit</value>
134
  </data>
135
  <data name="Decline" xml:space="preserve">
136
    <value>Zamítnout</value>
137
  </data>
138
  <data name="EditComment" xml:space="preserve">
139
    <value>Upravte komentář</value>
140
  </data>
141
  <data name="From" xml:space="preserve">
142
    <value>z</value>
143
  </data>
144
  <data name="GoalDescription" xml:space="preserve">
145
    <value>Popis cíle</value>
146
  </data>
147
  <data name="InsertGoalDescription" xml:space="preserve">
148
    <value>Zadejte popis cíle</value>
149
  </data>
150
  <data name="InsertGoalName" xml:space="preserve">
151
    <value>Zadejte název cíle</value>
152
  </data>
153
  <data name="PendingApproval" xml:space="preserve">
154
    <value>Čeká na schválení</value>
155
  </data>
156
  <data name="PrivateComment" xml:space="preserve">
157
    <value>Soukromý</value>
158
  </data>
159
  <data name="PublicComment" xml:space="preserve">
160
    <value>Veřejný</value>
161
  </data>
162
  <data name="RequireApproval" xml:space="preserve">
163
    <value>Odeslat ke schválení</value>
164
  </data>
165
  <data name="Review" xml:space="preserve">
166
    <value>hodnocení</value>
167
  </data>
168
  <data name="SaveChanges" xml:space="preserve">
169
    <value>Uložit změny</value>
170
  </data>
171
  <data name="To" xml:space="preserve">
172
    <value>na</value>
173
  </data>
120 174
  <data name="UpdatedDescription" xml:space="preserve">
121 175
    <value>změnil popis cíle</value>
122 176
  </data>
src/Modules/Goal/Application/Leuze.Modules.Goal.Application.UI/Resources/Pages/Components/GoalDetailAside.de-DE.resx
1 1
<?xml version="1.0" encoding="utf-8"?>
2 2
<root>
3
	<!-- 
4
		Microsoft ResX Schema
3
  <!-- 
4
    Microsoft ResX Schema 
5
    
6
    Version 2.0
7
    
8
    The primary goals of this format is to allow a simple XML format 
9
    that is mostly human readable. The generation and parsing of the 
10
    various data types are done through the TypeConverter classes 
11
    associated with the data types.
12
    
13
    Example:
14
    
15
    ... ado.net/XML headers & schema ...
16
    <resheader name="resmimetype">text/microsoft-resx</resheader>
17
    <resheader name="version">2.0</resheader>
18
    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
19
    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
20
    <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
21
    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
22
    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
23
        <value>[base64 mime encoded serialized .NET Framework object]</value>
24
    </data>
25
    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
26
        <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
27
        <comment>This is a comment</comment>
28
    </data>
29
                
30
    There are any number of "resheader" rows that contain simple 
31
    name/value pairs.
32
    
33
    Each data row contains a name, and value. The row also contains a 
34
    type or mimetype. Type corresponds to a .NET class that support 
35
    text/value conversion through the TypeConverter architecture. 
36
    Classes that don't support this are serialized and stored with the 
37
    mimetype set.
38
    
39
    The mimetype is used for serialized objects, and tells the 
40
    ResXResourceReader how to depersist the object. This is currently not 
41
    extensible. For a given mimetype the value must be set accordingly:
42
    
43
    Note - application/x-microsoft.net.object.binary.base64 is the format 
44
    that the ResXResourceWriter will generate, however the reader can 
45
    read any of the formats listed below.
46
    
47
    mimetype: application/x-microsoft.net.object.binary.base64
48
    value   : The object must be serialized with 
49
            : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
50
            : and then encoded with base64 encoding.
51
    
52
    mimetype: application/x-microsoft.net.object.soap.base64
53
    value   : The object must be serialized with 
54
            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
55
            : and then encoded with base64 encoding.
5 56

  
6
		Version 1.3
7

  
8
		The primary goals of this format is to allow a simple XML format 
9
		that is mostly human readable. The generation and parsing of the 
10
		various data types are done through the TypeConverter classes 
11
		associated with the data types.
12

  
13
		Example:
14

  
15
		... ado.net/XML headers & schema ...
16
		<resheader name="resmimetype">text/microsoft-resx</resheader>
17
		<resheader name="version">1.3</resheader>
18
		<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
19
		<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
20
		<data name="Name1">this is my long string</data>
21
		<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
22
		<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
23
			[base64 mime encoded serialized .NET Framework object]
24
		</data>
25
		<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
26
			[base64 mime encoded string representing a byte array form of the .NET Framework object]
27
		</data>
28

  
29
		There are any number of "resheader" rows that contain simple 
30
		name/value pairs.
31

  
32
		Each data row contains a name, and value. The row also contains a 
33
		type or mimetype. Type corresponds to a .NET class that support 
34
		text/value conversion through the TypeConverter architecture. 
35
		Classes that don't support this are serialized and stored with the 
36
		mimetype set.
37

  
38
		The mimetype is used for serialized objects, and tells the 
39
		ResXResourceReader how to depersist the object. This is currently not 
40
		extensible. For a given mimetype the value must be set accordingly:
41

  
42
		Note - application/x-microsoft.net.object.binary.base64 is the format 
43
		that the ResXResourceWriter will generate, however the reader can 
44
		read any of the formats listed below.
45

  
46
		mimetype: application/x-microsoft.net.object.binary.base64
47
		value   : The object must be serialized with 
48
			: System.Serialization.Formatters.Binary.BinaryFormatter
49
			: and then encoded with base64 encoding.
50

  
51
		mimetype: application/x-microsoft.net.object.soap.base64
52
		value   : The object must be serialized with 
53
			: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
54
			: and then encoded with base64 encoding.
55

  
56
		mimetype: application/x-microsoft.net.object.bytearray.base64
57
		value   : The object must be serialized into a byte array 
58
			: using a System.ComponentModel.TypeConverter
59
			: and then encoded with base64 encoding.
60
	-->
61
	
62
	<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
63
		<xsd:element name="root" msdata:IsDataSet="true">
64
			<xsd:complexType>
65
				<xsd:choice maxOccurs="unbounded">
66
					<xsd:element name="data">
67
						<xsd:complexType>
68
							<xsd:sequence>
69
								<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
70
								<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
71
							</xsd:sequence>
72
							<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
73
							<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
74
							<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
75
						</xsd:complexType>
76
					</xsd:element>
77
					<xsd:element name="resheader">
78
						<xsd:complexType>
79
							<xsd:sequence>
80
								<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
81
							</xsd:sequence>
82
							<xsd:attribute name="name" type="xsd:string" use="required" />
83
						</xsd:complexType>
84
					</xsd:element>
85
				</xsd:choice>
86
			</xsd:complexType>
87
		</xsd:element>
88
	</xsd:schema>
89
	<resheader name="resmimetype">
90
		<value>text/microsoft-resx</value>
91
	</resheader>
92
	<resheader name="version">
93
		<value>1.3</value>
94
	</resheader>
95
	<resheader name="reader">
96
		<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
97
	</resheader>
98
	<resheader name="writer">
99
		<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
100
	</resheader>
57
    mimetype: application/x-microsoft.net.object.bytearray.base64
58
    value   : The object must be serialized into a byte array 
59
            : using a System.ComponentModel.TypeConverter
60
            : and then encoded with base64 encoding.
61
    -->
62
  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
63
    <xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
64
    <xsd:element name="root" msdata:IsDataSet="true">
65
      <xsd:complexType>
66
        <xsd:choice maxOccurs="unbounded">
67
          <xsd:element name="metadata">
68
            <xsd:complexType>
69
              <xsd:sequence>
70
                <xsd:element name="value" type="xsd:string" minOccurs="0" />
71
              </xsd:sequence>
72
              <xsd:attribute name="name" use="required" type="xsd:string" />
73
              <xsd:attribute name="type" type="xsd:string" />
74
              <xsd:attribute name="mimetype" type="xsd:string" />
75
              <xsd:attribute ref="xml:space" />
76
            </xsd:complexType>
77
          </xsd:element>
78
          <xsd:element name="assembly">
79
            <xsd:complexType>
80
              <xsd:attribute name="alias" type="xsd:string" />
81
              <xsd:attribute name="name" type="xsd:string" />
82
            </xsd:complexType>
83
          </xsd:element>
84
          <xsd:element name="data">
85
            <xsd:complexType>
86
              <xsd:sequence>
87
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
88
                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
89
              </xsd:sequence>
90
              <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
91
              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
92
              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
93
              <xsd:attribute ref="xml:space" />
94
            </xsd:complexType>
95
          </xsd:element>
96
          <xsd:element name="resheader">
97
            <xsd:complexType>
98
              <xsd:sequence>
99
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
100
              </xsd:sequence>
101
              <xsd:attribute name="name" type="xsd:string" use="required" />
102
            </xsd:complexType>
103
          </xsd:element>
104
        </xsd:choice>
105
      </xsd:complexType>
106
    </xsd:element>
107
  </xsd:schema>
108
  <resheader name="resmimetype">
109
    <value>text/microsoft-resx</value>
110
  </resheader>
111
  <resheader name="version">
112
    <value>2.0</value>
113
  </resheader>
114
  <resheader name="reader">
115
    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
116
  </resheader>
117
  <resheader name="writer">
118
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
119
  </resheader>
120
  <data name="AddComment" xml:space="preserve">
121
    <value>Add comment</value>
122
  </data>
123
  <data name="AddCommentPublicPrivate" xml:space="preserve">
124
    <value>Add private or public comment</value>
125
  </data>
126
  <data name="Approve" xml:space="preserve">
127
    <value>Approve</value>
128
  </data>
129
  <data name="Approved" xml:space="preserve">
130
    <value>Approved</value>
131
  </data>
132
  <data name="Create" xml:space="preserve">
133
    <value>Create</value>
134
  </data>
135
  <data name="Decline" xml:space="preserve">
136
    <value>Decline</value>
137
  </data>
138
  <data name="EditComment" xml:space="preserve">
139
    <value>Edit comment</value>
140
  </data>
141
  <data name="From" xml:space="preserve">
142
    <value>from</value>
143
  </data>
144
  <data name="GoalDescription" xml:space="preserve">
145
    <value>Goal description</value>
146
  </data>
147
  <data name="InsertGoalDescription" xml:space="preserve">
148
    <value>Insert goal description</value>
149
  </data>
150
  <data name="InsertGoalName" xml:space="preserve">
151
    <value>Insert goal name</value>
152
  </data>
153
  <data name="PendingApproval" xml:space="preserve">
154
    <value>Approval pending</value>
155
  </data>
156
  <data name="PrivateComment" xml:space="preserve">
157
    <value>Private</value>
158
  </data>
159
  <data name="PublicComment" xml:space="preserve">
160
    <value>Public</value>
161
  </data>
162
  <data name="RequireApproval" xml:space="preserve">
163
    <value>Send for approval</value>
164
  </data>
165
  <data name="Review" xml:space="preserve">
166
    <value>review</value>
167
  </data>
168
  <data name="SaveChanges" xml:space="preserve">
169
    <value>Save changes</value>
170
  </data>
171
  <data name="To" xml:space="preserve">
172
    <value>to</value>
173
  </data>
174
  <data name="UpdatedDescription" xml:space="preserve">
175
    <value>updated goal description</value>
176
  </data>
177
  <data name="UpdatedName" xml:space="preserve">
178
    <value>changed goal name</value>
179
  </data>
180
  <data name="UpdatedOwnerLock" xml:space="preserve">
181
    <value>changed owner lock to</value>
182
  </data>
183
  <data name="UpdatedPercentileFinal" xml:space="preserve">
184
    <value>updated final percentile</value>
185
  </data>
186
  <data name="UpdatedPercentileUser" xml:space="preserve">
187
    <value>updated self review percentile</value>
188
  </data>
189
  <data name="UpdatedSupervisorLock" xml:space="preserve">
190
    <value>changed TL lock to</value>
191
  </data>
192
  <data name="User" xml:space="preserve">
193
    <value>User</value>
194
  </data>
101 195
</root>
src/Modules/Goal/Application/Leuze.Modules.Goal.Application/CQRS/GoalDefinitions/Commands/LockDefinition.cs
65 65
                    return RequestResponse<Response>.CreateSuccessResponse(new());
66 66
                }
67 67

  
68
                var tlList = await _domainUserRepo.GetAllTLsForUser(id);
68
                var tlList = await _domainUserRepo.GetAllTLsForUser(definition.OwnerId);
69 69

  
70 70
                if (tlList.Where(o => o.Id == id).Any())
71 71
                {
src/Modules/Goal/Application/Leuze.Modules.Goal.Application/CQRS/Goals/Commands/LockGoal.cs
75 75
                    return RequestResponse<Response>.CreateSuccessResponse(new());
76 76
                }
77 77

  
78
                var tlList = await _domainUserRepository.GetAllTLsForUser(id);
78
                var tlList = await _domainUserRepository.GetAllTLsForUser(goal.GoalDefinition.OwnerId);
79 79

  
80 80
                if (tlList.Where(o => o.Id == id).Any())
81 81
                {

Také k dispozici: Unified diff