|
@@ -29,30 +29,30 @@
|
|
|
</div>
|
|
</div>
|
|
|
<div class="panel panel-default" style="margin-bottom: 10px;margin-top: 10px;">
|
|
<div class="panel panel-default" style="margin-bottom: 10px;margin-top: 10px;">
|
|
|
<div class="panel-body">
|
|
<div class="panel-body">
|
|
|
- <vuedraggable v-model="noFinishedTraces" class="wrapper" :delay="500" :delay-on-touch-only="true" @change="end">
|
|
|
|
|
- <transition-group>
|
|
|
|
|
- <div v-for="trace in noFinishedTraces" :key="trace.id" style="margin-top: 5px; cursor: pointer;">
|
|
|
|
|
|
|
+ <vuedraggable v-model="noFinishedTraces" item-key="id" class="wrapper" :delay="500" :delay-on-touch-only="true" @change="end">
|
|
|
|
|
+ <template #item="{element}">
|
|
|
|
|
+ <div style="margin-top: 5px; cursor: pointer;">
|
|
|
<span>
|
|
<span>
|
|
|
<span>
|
|
<span>
|
|
|
- <span>
|
|
|
|
|
- <Checkbox
|
|
|
|
|
- :id="'trace-finish-' + trace.id" v-model="trace.finished" class-name="terms" class="trace-checkbox"
|
|
|
|
|
- @input="updateTracefinished(trace)"
|
|
|
|
|
- />
|
|
|
|
|
- </span>
|
|
|
|
|
- <span @click="openLine(trace)">
|
|
|
|
|
- <span v-dompurify-html="trace.summary" class="trace-summary" :class="{'font-color': trace.timeLineCompletion==true}" />
|
|
|
|
|
- <span class="glyphicon glyphicon-option-vertical trace-icon" aria-hidden="true" />
|
|
|
|
|
- <span class="label trace-user" :class="{'label-danger' : trace.overdue == true, 'label-primary' : trace.overdue != true}">
|
|
|
|
|
- <span v-dompurify-html="trace.receiveUserName" />
|
|
|
|
|
- <span>{{ formatDate(trace.planFinishedDate) }}</span>
|
|
|
|
|
- </span>
|
|
|
|
|
|
|
+ <Checkbox
|
|
|
|
|
+ :id="'trace-finish-' + element.id" v-model="element.finished" class-name="terms" class="trace-checkbox"
|
|
|
|
|
+ @input="updateTracefinished(element)"
|
|
|
|
|
+ />
|
|
|
|
|
+ </span>
|
|
|
|
|
+ <span @click="openLine(element)">
|
|
|
|
|
+ <!-- eslint-disable-next-line -->
|
|
|
|
|
+ <span class="trace-summary" :class="{'font-color': element.timeLineCompletion==true}" v-html="element.summary" />
|
|
|
|
|
+ <span class="glyphicon glyphicon-option-vertical trace-icon" aria-hidden="true" />
|
|
|
|
|
+ <span class="label trace-user" :class="{'label-danger' : element.overdue == true, 'label-primary' : element.overdue != true}">
|
|
|
|
|
+ <!-- eslint-disable-next-line -->
|
|
|
|
|
+ <span v-html="element.receiveUserName" />
|
|
|
|
|
+ <span>{{ formatDate(element.planFinishedDate) }}</span>
|
|
|
</span>
|
|
</span>
|
|
|
</span>
|
|
</span>
|
|
|
- <a class="fa-pull-right" style="color: blue;" @click="edit(trace)">编辑</a>
|
|
|
|
|
</span>
|
|
</span>
|
|
|
|
|
+ <a class="fa-pull-right" style="color: blue;" @click="edit(element)">编辑</a>
|
|
|
</div>
|
|
</div>
|
|
|
- </transition-group>
|
|
|
|
|
|
|
+ </template>
|
|
|
</vuedraggable>
|
|
</vuedraggable>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
@@ -78,13 +78,13 @@
|
|
|
|
|
|
|
|
<script>
|
|
<script>
|
|
|
var Common = require('../common/Common.js');
|
|
var Common = require('../common/Common.js');
|
|
|
-var Uuid = require('pc-component-v3').Uuid;
|
|
|
|
|
|
|
+var Uuid = require('pc-component-v3').default.Uuid;
|
|
|
import TraceCommon from './TraceCommon.js';
|
|
import TraceCommon from './TraceCommon.js';
|
|
|
import TraceResource from './TraceResource.js';
|
|
import TraceResource from './TraceResource.js';
|
|
|
-var Navbar = require('pc-component-v3').Navbar;
|
|
|
|
|
|
|
+var Navbar = require('pc-component-v3').default.Navbar;
|
|
|
var Pagination = require('pc-component-v3').default.VueBootstrapPagination;;
|
|
var Pagination = require('pc-component-v3').default.VueBootstrapPagination;;
|
|
|
-var PageSizeSelect = require('pc-component-v3').PageSizeSelect;
|
|
|
|
|
-var Checkbox = require('pc-component-v3').Checkbox;
|
|
|
|
|
|
|
+var PageSizeSelect = require('pc-component-v3').default.PageSizeSelect;
|
|
|
|
|
+var Checkbox = require('pc-component-v3').default.Checkbox;
|
|
|
import vuedraggable from 'vuedraggable';
|
|
import vuedraggable from 'vuedraggable';
|
|
|
|
|
|
|
|
export default {
|
|
export default {
|
|
@@ -200,6 +200,7 @@ export default {
|
|
|
_self.pagination.total = data.totalSize;
|
|
_self.pagination.total = data.totalSize;
|
|
|
_self.pagination.last_page = Math.ceil(_self.pagination.total / _self.pagination.per_page);
|
|
_self.pagination.last_page = Math.ceil(_self.pagination.total / _self.pagination.per_page);
|
|
|
_self.noFinishedTraces = data.traceDtos;
|
|
_self.noFinishedTraces = data.traceDtos;
|
|
|
|
|
+ console.log(_self.noFinishedTraces);
|
|
|
},
|
|
},
|
|
|
error: function(XMLHttpRequest, textStatus, errorThrown) {
|
|
error: function(XMLHttpRequest, textStatus, errorThrown) {
|
|
|
Common.processException(XMLHttpRequest, textStatus, errorThrown);
|
|
Common.processException(XMLHttpRequest, textStatus, errorThrown);
|
|
@@ -268,8 +269,10 @@ export default {
|
|
|
if(data == null) {
|
|
if(data == null) {
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
|
|
+ console.log(data);
|
|
|
for(var index = 0; index < data.length; index++) {
|
|
for(var index = 0; index < data.length; index++) {
|
|
|
- _self.$set(_self.projectUsers, index, data[index]);
|
|
|
|
|
|
|
+ _self.projectUsers[index] = data[index];
|
|
|
|
|
+ // _self.$set(_self.projectUsers, index, data[index]);
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
error: function(XMLHttpRequest, textStatus, errorThrown) {
|
|
error: function(XMLHttpRequest, textStatus, errorThrown) {
|
|
@@ -302,7 +305,8 @@ export default {
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
for(var index = 0; index < data.length; index++) {
|
|
for(var index = 0; index < data.length; index++) {
|
|
|
- _self.$set(_self.projectAdminUsers, index, data[index]);
|
|
|
|
|
|
|
+ _self.projectAdminUsers[index] = data[index];
|
|
|
|
|
+ // _self.$set(_self.projectAdminUsers, index, data[index]);
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
error: function(XMLHttpRequest, textStatus, errorThrown) {
|
|
error: function(XMLHttpRequest, textStatus, errorThrown) {
|