@{
|
ViewBag.Title = "任务管理";
|
Layout = "~/Views/Shared/_LayoutVue.cshtml";
|
}
|
|
<div id="list" v-cloak>
|
<el-card class="box-card">
|
<el-form label-width="90px" v-bind:model="formData" class="demo-ruleForm" v-bind:inline="true">
|
<el-form-item label="@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_stockcode"):">
|
<hh-select-url v-model="formData.stockCode"
|
url="/Basic/Common/StockList"
|
valuefield="CN_S_STOCK_CODE"
|
textfield="CN_S_STOCK_NAME"
|
datafield="Data">
|
</hh-select-url>
|
</el-form-item>
|
<el-form-item label="@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_tasktype"):">
|
<hh-select-url v-model="formData.taskType"
|
v-bind:options="formData.optionsTaskType">
|
</hh-select-url>
|
</el-form-item>
|
|
<el-form-item label="@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_taskstate"):">
|
<hh-select-url v-model="formData.taskState"
|
v-bind:options="formData.optionsTaskState">
|
</hh-select-url>
|
</el-form-item>
|
|
<el-form-item label="@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_taskno"):">
|
<el-input v-model="formData.taskNo" size="mini"></el-input>
|
</el-form-item>
|
|
<el-form-item label="@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_traycode"):">
|
<el-input v-model="formData.trayCode" size="mini"></el-input>
|
</el-form-item>
|
|
<el-form-item label="@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_startarea"):">
|
<el-input v-model="formData.startArea" size="mini"></el-input>
|
</el-form-item>
|
|
<el-form-item label="@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_endarea"):">
|
<el-input v-model="formData.endArea" size="mini"></el-input>
|
</el-form-item>
|
|
<el-form-item label="@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_createdate"):" style="width:400px">
|
<el-date-picker v-model="formData.date"
|
type="daterange"
|
align="right"
|
unlink-panels
|
range-separator="@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_public_constant_to")"
|
start-placeholder="@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_public_constant_start_date")"
|
end-placeholder="@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_public_constant_end_date")"
|
value-format="yyyy-MM-dd"
|
v-on:change="selectTime"
|
v-bind:picker-options="pickerOptions2" size="mini" style="width:300px">
|
</el-date-picker>
|
</el-form-item>
|
|
</el-form>
|
<el-row style="padding-left: 10px; margin-top: 7px;">
|
<el-button style="margin-top:2px;" size="mini" type="primary" v-on:click="search" v-has="'Select'">@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_public_button_search")</el-button>
|
<el-button size="mini" type="primary" v-on:click="start" v-has="'Start'">@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_public_button_start")</el-button>
|
<el-button size="mini" type="primary" v-on:click="end" v-has="'Finish'">@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_public_button_complete")</el-button>
|
<el-button size="mini" type="primary" v-on:click="cancel" v-has="'Delete'">@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_public_button_cacel")</el-button>
|
</el-row>
|
</el-card>
|
<hh-table v-bind:coloptions="outCols"
|
v-bind:paging="true"
|
v-bind:check="true"
|
v-bind:where="formData"
|
v-bind:rowno="true"
|
dh="145"
|
url="@Url.Action("GetList")"
|
ref="tasklist"></hh-table>
|
</div>
|
@section scripts{
|
<script>
|
var outList = new Vue({
|
data: {
|
formData: {
|
stockCode: "",
|
optionsTaskType: [{ label: "全部", value: "" }, { label: "上架", value: "上架" }, { label: "下架", value: "下架" },
|
{ label: "移库", value: "移库" }, { label: "空托入", value: "空托入" },
|
{ label: "空托出", value: "空托出" }, { label: "转运", value: "转运" }, { label: "叫料", value: "叫料" }], //{ label: "分拣出", value: "分拣出" }, { label: "分拣回", value: "分拣回" }, { label: "盘点出", value: "盘点出" }, { label: "盘点回", value: "盘点回" },
|
taskType: "",
|
optionsTaskState: [{ label: "全部", value: "" }, { label: "未执行", value: "未执行" }, { label: "执行中", value: "执行中" },
|
{ label: "完成", value: "完成" }, { label: "取消", value: "取消" }, ], //{ label: "开始取货", value: "开始取货" }, { label: "取货完成", value: "取货完成" }, , { label: "失败", value: "失败" }, { label: "空取", value: "空取" }
|
taskState: "",
|
taskNo: "",
|
state: "",
|
date: "",
|
valueDate: "",
|
trayCode: "",
|
startArea: "",
|
endArea: ""
|
},
|
where: {},
|
outCols: [
|
{ f: "CN_S_TASK_NO", n: "@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_taskno")", w: 130 },
|
{ f: "CN_S_TASK_TYPE", n: "@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_tasktype")", w: 80 },
|
{ f: "CN_S_STOCK_CODE", n: "@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_stockcode")", w: 100 },
|
{ f: "CN_S_TRAY_CODE", n: "@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_traycode")", w: 100 },
|
{ f: "CN_S_STATE", n: "@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_taskstate")", w: 80 },
|
{ f: "CN_S_START_AREA", n: "@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_startarea")", w: 100 },
|
{ f: "CN_S_START_BIT", n: "@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_startlocation")", w: 110 },
|
{ f: "CN_S_END_AREA", n: "@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_endarea")", w: 100 },
|
{ f: "CN_S_END_BIT", n: "@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_endlocation")", w: 110 },
|
{ f: "CN_N_PRIORITY", n: "@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_priority")", w: 60 },
|
{ f: "CN_T_CREATE", n: "@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_createtime")", w: 120 },
|
{ f: "CN_T_START", n: "@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_starttime")", w: 120 },
|
{ f: "CN_T_END", n: "@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_completetime")", w: 120 },
|
{ f: "CN_S_FROM_OP", n: "@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_fromoperate")", w: 120 },
|
//{ f: "CN_S_FROM_NO", n: "来源单号", w: 120 }
|
]
|
},
|
mounted: function () {
|
$this = this;
|
$this.pickerOptions2();
|
},
|
methods: {
|
search: function () {
|
var $this = this;
|
this.$refs.tasklist.loadData($this.formData);
|
},
|
start: function () {
|
$this = this;
|
var valide = true;
|
this.selectMultiRowEvent(function (rows) {
|
wms.confirm("@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_confirm_is_start")", function () {
|
var taskNos = "";
|
rows.forEach(function (value, index, array) {
|
if (value.CN_S_STATE != "未执行") {
|
valide = false;
|
return false;
|
}
|
if (index != 0)
|
taskNos += ",";
|
taskNos += value.CN_S_TASK_NO;
|
});
|
|
if (!valide) {
|
wms.error("@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_muststartnoexcute")");
|
return false;
|
}
|
ajaxManage({
|
url: "@Url.Action("StartTask")?taskNos=" + taskNos,
|
type: "Get",
|
success: function (data) {
|
if (data.Success) {
|
$this.$refs.tasklist.loadData();
|
wms.success("@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_start_succ")");
|
}
|
else {
|
wms.error(data.Msg);
|
}
|
}
|
});
|
});
|
});
|
},
|
end: function () {
|
$this = this;
|
var valide = true;
|
this.selectMultiRowEvent(function (rows) {
|
wms.confirm("@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_confirm_is_complete")", function () {
|
var taskNos = "";
|
rows.forEach(function (value, index, array) {
|
if (value.CN_S_STATE == "完成")
|
{
|
valide = false;
|
return false;
|
}
|
if (index != 0)
|
taskNos += ",";
|
taskNos += value.CN_S_TASK_NO;
|
});
|
if (!valide) {
|
wms.error("@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_mustcompletenocomplete")");
|
return false;
|
}
|
ajaxManage({
|
url: "@Url.Action("EndTask")?taskNos=" + taskNos,
|
type: "Get",
|
success: function (data) {
|
if (data.Success) {
|
$this.$refs.tasklist.loadData();
|
wms.success("@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_complete_succ")");
|
}
|
else {
|
wms.error(data.Msg);
|
}
|
}
|
});
|
});
|
});
|
},
|
cancel: function(){
|
$this = this;
|
var valide = true;
|
this.selectMultiRowEvent(function (rows) {
|
wms.confirm("@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_confirm_is_cancel")", function () {
|
var taskNos = "";
|
rows.forEach(function (value, index, array) {
|
if (value.CN_S_STATE != "未执行") {
|
valide = false;
|
}
|
if (index != 0)
|
taskNos += ",";
|
taskNos += value.CN_S_TASK_NO;
|
});
|
|
if (!valide) {
|
wms.error("@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_mustcancelnoexcute")");
|
return false;
|
}
|
ajaxManage({
|
url: "@Url.Action("CancelTask")?taskNos=" + taskNos,
|
type: "Get",
|
success: function (data) {
|
if (data.Success) {
|
$this.$refs.tasklist.loadData();
|
wms.success("@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_cancelsucc")");
|
}
|
else {
|
wms.error(data.Msg);
|
}
|
}
|
});
|
});
|
});
|
},
|
selectMultiRowEvent: function (callBack) {
|
var selectRow = this.$refs.tasklist.selections;
|
if (selectRow.length <= 0) {
|
wms.warning("@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_atlest_onemore")");
|
return;
|
}
|
if (callBack)
|
callBack(selectRow);
|
},
|
selectSingleRowEvent: function (callBack) {
|
var selectRow = this.$refs.tasklist.selections;
|
if (selectRow.length != 1) {
|
wms.warning("@HH.WMS.WebUI.LanService.LanServiceDll.translate("cshtml_taskmgr_task_just_one")");
|
return;
|
}
|
if (callBack)
|
callBack(selectRow[0]);
|
},
|
selectTime: function (val) {
|
$this = this;
|
if (val != null)
|
$this.formData.valueDate = JSON.stringify(val);
|
else
|
$this.formData.valueDate = "";
|
},
|
pickerOptions2: function () {
|
shortcuts: [{
|
text: '最近一周',
|
onClick: function onClick(picker) {
|
var end = new Date();
|
var start = new Date();
|
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
|
picker.$emit('pick', [start, end]);
|
}
|
}, {
|
text: '最近一个月',
|
onClick: function onClick(picker) {
|
var end = new Date();
|
var start = new Date();
|
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
|
picker.$emit('pick', [start, end]);
|
}
|
}, {
|
text: '最近三个月',
|
onClick: function onClick(picker) {
|
var end = new Date();
|
var start = new Date();
|
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
|
picker.$emit('pick', [start, end]);
|
}
|
}]
|
}
|
},
|
watch: {
|
deep: true
|
},
|
el: '#list'
|
});
|
</script>
|
}
|