Browse Source

生产订单列表增加分页,合约号码字段,状态筛选条件

master
Yangzz 5 months ago
parent
commit
18c2329dc5
  1. 1
      src/api/shopOrder/shopOrder.js
  2. 161
      src/views/modules/shopOrder/shopOrder/searchShopOrder.vue

1
src/api/shopOrder/shopOrder.js

@ -30,6 +30,7 @@ export const searchProductionDispatchList = data => createAPI(`/shopOrder/search
// -------------查询-生产订单--------------
export const searchShopOrder = data => createAPI(`/shopOrder/searchShopOrder`, 'post', data)
export const searchShopOrderByPaging = data => createAPI(`/shopOrder/searchShopOrderByPaging`, 'post', data)
// -------------生产订单--------------
export const getShopOrderData = data => createAPI(`/shopOrder/getShopOrderData`, 'post', data)

161
src/views/modules/shopOrder/shopOrder/searchShopOrder.vue

@ -42,16 +42,7 @@
</el-select>
</el-form-item>
</el-form>
<!-- 物料状态 -->
<fieldset style="margin-left: 880px; margin-top: 45px; width: 170px;">
<legend>{{ labels.materialStatus }}</legend>
<el-checkbox :indeterminate="isIndeterminate" v-model="checkAll" @change="handleCheckAllChange">{{ labels.allSelectLabel }}</el-checkbox>
<el-checkbox-group v-model="checkedCities" @change="handleCheckedCitiesChange">
<el-checkbox v-for="city in cities" :label="city" :key="city">{{city}}</el-checkbox>
</el-checkbox-group>
</fieldset>
<el-form :inline="true" label-position="top" label-width="100px" style="margin-top: -92px;">
<el-form :inline="true" label-position="top" label-width="100px">
<el-form-item :label=labels.needDate>
<el-date-picker
style="width: 130px"
@ -86,6 +77,18 @@
<el-form-item :label=labels.orderNo>
<el-input v-model="searchData.orderNo" style="width: 130px"></el-input>
</el-form-item>
<el-form-item :label=labels.status>
<el-select filterable v-model="searchData.status" style="width: 130px" placeholder="请选择状态">
<el-option :label=labels.allSelectLabel value=""></el-option>
<el-option :label=labels.stoppedLabel value="已停工"></el-option>
<el-option :label=labels.startedLabel value="已开工"></el-option>
<el-option :label=labels.canceledLabel value="已取消"></el-option>
<el-option :label=labels.planedLabel value="已计划"></el-option>
<el-option :label=labels.scheduledLabel value="已排产"></el-option>
<el-option :label=labels.releasedLabel value="已下达"></el-option>
<el-option :label=labels.closedLabel value="已关闭"></el-option>
</el-select>
</el-form-item>
<el-form-item :label=labels.shopOrder>
<el-input v-model="searchData.orderRef1" style="width: 130px"></el-input>
</el-form-item>
@ -136,11 +139,22 @@
</template>
</el-table-column>
</el-table>
<el-form :inline="true" label-position="top" label-width="100px" style="margin-top: 0px">
<el-pagination
style="margin-top: 0px"
@size-change="sizeChangeHandle"
@current-change="currentChangeHandle"
:current-page="pageIndex"
:page-sizes="[20, 50, 100, 200, 500]"
:page-size="pageSize"
:total="totalPage"
layout="total, sizes, prev, pager, next, jumper">
</el-pagination>
<el-form :inline="true" label-position="top" label-width="100px" style="margin-top: -28px">
<span>{{ labels.shopOrderCountQty}}</span>
<el-input v-model="sum1" style="width: 130px;text-align: right"></el-input>
<el-input v-model="sum1" style="width: 130px;text-align: right" readonly></el-input>
<span>{{ labels.inStockedQty }}</span>
<el-input v-model="sum2" style="width: 130px;text-align: right"></el-input>
<el-input v-model="sum2" style="width: 130px;text-align: right" readonly></el-input>
</el-form>
<Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist>
@ -164,7 +178,8 @@
} from "@/api/table.js";
import {
searchShopOrder
searchShopOrder,
searchShopOrderByPaging
} from "@/api/shopOrder/shopOrder.js";
import {
@ -184,8 +199,7 @@
//var cityOptions = ['', '', '', '', '', '', '', '', ''];
let cityOptions = [];
export default {
//-
name: "searchShopOrder",
@ -220,6 +234,7 @@
projectNo: '项目编码:',
shopOrderRemark: '销售订单备注:',
orderNo: '生产订单号:',
status: '生产订单状态:',
shopOrder: '销售订单号:',
isMaterialIssued: '是否排料:',
materialStatus: '物料状态',
@ -237,7 +252,7 @@
otherProduct: '其他',
planedLabel: '已计划',
releasedLabel: '已下达',
scheduledLabel: '已计划',
scheduledLabel: '已排产',
materialIssuedLabel: '已发料',
inStockedLabel: '已入库',
closedLabel: '已关闭',
@ -263,17 +278,15 @@
exportHeader: ["查询生产订单"],
exportFooter: [],
// end
checkAll: true,
checkedCities: [],
// checkedCities: [this.labels.planedLabel, this.labels.releasedLabel, this.labels.scheduledLabel, this.labels.materialIssuedLabel, this.labels.inStockedLabel, this.labels.closedLabel, this.labels.canceledLabel, this.labels.stoppedLabel, this.labels.startedLabel],
cities: cityOptions,
isIndeterminate: true,
height: 200,
modelFlag:false,
modelInputFlag:true,
selectList:[],
sum1:0,
sum2:0,
pageIndex: 1,
pageSize: 20,
totalPage: 0,
searchData: {
orderType:'',
planner:'',
@ -287,11 +300,14 @@
orderRef1:'',
costRollUpFlag:'',
status:'',
orderStatus:'',
date1:'',
date2:'',
date3:'',
date4:'',
user:this.$store.state.user.name
user:this.$store.state.user.name,
page: 1,
limit: 20,
},
dataList:[],
dataListLoading: false,
@ -461,10 +477,10 @@
{
userId: this.$store.state.user.name,
functionId: 6028,
serialNumber: '6028TableXXX',
serialNumber: '6028TableStatus',
tableId: "6028Table",
tableName: "查询生产订单表",
columnProp: "XXX",
columnProp: "status",
headerAlign: "center",
align: "left",
columnLabel: "订单状态",
@ -479,10 +495,28 @@
{
userId: this.$store.state.user.name,
functionId: 6028,
serialNumber: '6028TableStatus',
serialNumber: '6028TableBatchNo',
tableId: "6028Table",
tableName: "查询生产订单表",
columnProp: "status",
columnProp: "batchNo",
headerAlign: "center",
align: "left",
columnLabel: "合约号码",
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 160
},
{
userId: this.$store.state.user.name,
functionId: 6028,
serialNumber: '6028TableCustomerName',
tableId: "6028Table",
tableName: "查询生产订单表",
columnProp: "customerName",
headerAlign: "center",
align: "left",
columnLabel: "客户名称",
@ -1196,43 +1230,49 @@
this.$refs.baseList.init(val,strVal)
})
},
handleCheckAllChange(val) {
this.checkedCities = val ? cityOptions : [];
this.isIndeterminate = false;
},
handleCheckedCitiesChange(value) {
let checkedCount = value.length;
this.checkAll = checkedCount === this.cities.length;
this.isIndeterminate = checkedCount > 0 && checkedCount < this.cities.length;
},
getData(){
if(this.checkedCities.length==0){
this.$alert(this.labels.pleaseSelectOrderStatus, this.labels.errorInfo, {
confirmButtonText: this.labels.confirmLabel
})
}
let newStr='(';
for (let i = 0; i < this.checkedCities.length-1; i++) {
newStr+='\''+this.checkedCities[i]+'\','
//
if(this.searchData.status && this.searchData.status !== ''){
this.searchData.status = this.searchData.status;
} else {
//
this.searchData.status = '';
}
newStr+='\''+this.checkedCities[this.checkedCities.length-1]+'\')';
this.searchData.status=newStr;
searchShopOrder(this.searchData).then(({data}) => {
this.dataList = data.rows;
this.sum1=0;
this.sum2=0;
if(this.dataList.length==0){
this.searchData.limit = this.pageSize
this.searchData.page = this.pageIndex
searchShopOrderByPaging(this.searchData).then(({data}) => {
if (data.code === 0) {
this.dataList = data.page.list
this.pageIndex = data.page.currPage
this.pageSize = data.page.pageSize
this.totalPage = data.page.totalCount
//this.dataList = data.rows;
this.sum1=0;
this.sum2=0;
}else {
if(this.dataList.length==0){
this.sum1=0;
this.sum2=0;
}else {
for (let i = 0; i < this.dataList.length; i++) {
this.sum2 =this.decimalUtil.add(this.sum2,this.dataList[i].lotSize);
this.sum2 =this.decimalUtil.add(this.sum2,this.dataList[i].finishedQty);
for (let i = 0; i < this.dataList.length; i++) {
this.sum2 =this.decimalUtil.add(this.sum2,this.dataList[i].lotSize);
this.sum2 =this.decimalUtil.add(this.sum2,this.dataList[i].finishedQty);
}
}
}
})
},
//
sizeChangeHandle(val) {
this.pageSize = val
this.pageIndex = 1
this.getData()
},
currentChangeHandle(val) {
this.pageIndex = val
this.getData()
},
//excel
createExportData() {
@ -1379,19 +1419,8 @@
}
});
//
this.loadOrderStatusData();
},
//
loadOrderStatusData(){
//
this.cityOptions = [this.labels.planedLabel, this.labels.releasedLabel, this.labels.scheduledLabel, this.labels.materialIssuedLabel, this.labels.inStockedLabel,
this.labels.closedLabel, this.labels.canceledLabel, this.labels.stoppedLabel, this.labels.startedLabel];
this.checkedCities = [this.labels.planedLabel, this.labels.releasedLabel, this.labels.scheduledLabel, this.labels.materialIssuedLabel, this.labels.inStockedLabel,
this.labels.closedLabel, this.labels.canceledLabel, this.labels.stoppedLabel, this.labels.startedLabel];
}
},
created() {
this.getMultiLanguageList();//

Loading…
Cancel
Save