Browse Source

Merge remote-tracking branch 'origin/master'

zhanglei
ligaode 7 months ago
parent
commit
fbb89bee23
  1. 8
      yxt-as-ui/src/api/Common/dictcommons.js
  2. 12
      yxt-as-ui/src/api/operation/salesInvoice.js
  3. 9
      yxt-as-ui/src/api/warehouse/warehouse.js
  4. 2
      yxt-as-ui/src/router/index.js
  5. 7
      yxt-as-ui/src/views/basicinformation/additionitem/additionitem.vue
  6. 3
      yxt-as-ui/src/views/basicinformation/maintenanceProjectRecord/maintenanceProjectRecord.vue
  7. 7
      yxt-as-ui/src/views/basicinformation/maintenanceitem/maintenanceitem.vue
  8. 2
      yxt-as-ui/src/views/basicinformation/profession/profession.vue
  9. 3
      yxt-as-ui/src/views/basicinformation/sparePartsCommissionFiling/sparePartsCommissionFiling.vue
  10. 2
      yxt-as-ui/src/views/basicinformation/subjects/subjects.vue
  11. 600
      yxt-as-ui/src/views/goods/goods/goodsAdd2.vue
  12. 398
      yxt-as-ui/src/views/goods/goods/goodsInfo2.vue
  13. 20
      yxt-as-ui/src/views/goods/goods/index.vue
  14. 143
      yxt-as-ui/src/views/operation/repairbill/repairbillAdd.vue
  15. 4
      yxt-as-ui/src/views/operation/settleAccounts/settleAccounts.vue
  16. 124
      yxt-as-ui/src/views/operation/settleAccounts/settleAccountsAdd.vue
  17. 86
      yxt-as-ui/src/views/operation/settleAccounts/settleAccountsInfo.vue
  18. 47
      yxt-as-ui/src/views/operation/workorderinvoicing/relation/chooseRepairbill.vue
  19. 60
      yxt-as-ui/src/views/operation/workorderinvoicing/workorderinvoicingAdd.vue
  20. 14
      yxt-as-ui/src/views/operation/workorderinvoicing/workorderinvoicingInfo.vue
  21. 10
      yxt-as-ui/src/views/operation/workorderreturnvisit/workorderreturnvisit.vue
  22. 4
      yxt-as-ui/src/views/operation/workslrsettlement/workslrsettlement.vue
  23. 108
      yxt-as-ui/src/views/operation/workslrsettlement/workslrsettlementAdd.vue
  24. 88
      yxt-as-ui/src/views/operation/workslrsettlement/workslrsettlementInfo.vue
  25. 15
      yxt-as-ui/src/views/storage/adjustment/index.vue
  26. 387
      yxt-as-ui/src/views/storage/inventory/inventoryRefer.vue
  27. 50
      yxt-as-ui/src/views/storage/oldPartsCope/index.vue
  28. 48
      yxt-as-ui/src/views/storage/oldPartsFactory/index.vue
  29. 48
      yxt-as-ui/src/views/storage/oldpPartStocktaking/index.vue
  30. 49
      yxt-as-ui/src/views/storage/oldpPartStocktakingLoss/index.vue
  31. 49
      yxt-as-ui/src/views/storage/oldpPartStocktakingSurplus/index.vue
  32. 48
      yxt-as-ui/src/views/storage/stocktaking/index.vue
  33. 49
      yxt-as-ui/src/views/storage/stocktakingLoss/index.vue
  34. 49
      yxt-as-ui/src/views/storage/stocktakingSurplus/index.vue
  35. 153
      yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue
  36. 54
      yxt-as-ui/src/views/warehouse/goodsShelves/index.vue
  37. 30
      yxt-as-ui/src/views/warehouse/warehouse/index.vue
  38. 94
      yxt-as-ui/src/views/warehouse/warehouse/warehouseAdd.vue
  39. 9
      yxt-as-ui/src/views/warehouse/warehouse/warehouseInfo.vue
  40. 52
      yxt-as-ui/src/views/warehouse/warehouseArea/index.vue
  41. 215
      yxt-as-ui/src/views/warehouse/warehouseArea/warehouseAreaAdd.vue
  42. 32
      yxt-as-ui/src/views/warehouse/warehouseZone/warehouseZone.vue
  43. 137
      yxt-as-ui/src/views/warehouse/warehouseZone/warehouseZoneAdd.vue
  44. 70
      yxt-as-ui/src/views/workFlow/fanjiesuanFlow/workslrsettlementDaiBan.vue
  45. 70
      yxt-as-ui/src/views/workFlow/fanjiesuanFlow/workslrsettlementEdit.vue
  46. 70
      yxt-as-ui/src/views/workFlow/fanjiesuanFlow/workslrsettlementYiBan.vue
  47. 49
      yxt-as-ui/src/views/workFlow/gongdankaipiaoFlow/relation/chooseRepairbill.vue
  48. 12
      yxt-as-ui/src/views/workFlow/gongdankaipiaoFlow/workorderinvoicingDaiBan.vue
  49. 55
      yxt-as-ui/src/views/workFlow/gongdankaipiaoFlow/workorderinvoicingEdit.vue
  50. 11
      yxt-as-ui/src/views/workFlow/gongdankaipiaoFlow/workorderinvoicingYiBan.vue
  51. 80
      yxt-as-ui/src/views/workFlow/jiesuanFlow/settleAccountsDaiBan.vue
  52. 98
      yxt-as-ui/src/views/workFlow/jiesuanFlow/settleAccountsEdit.vue
  53. 80
      yxt-as-ui/src/views/workFlow/jiesuanFlow/settleAccountsYiBan.vue
  54. 7
      yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapply/AsBillSettelApplyDetailsVo.java
  55. 3
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapply/AsBillSettelApplyService.java
  56. 12
      yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java
  57. 21
      yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/base/WmsWarehouseInfoRest.java
  58. 5
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaMapper.xml
  59. 1
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaQuery.java
  60. 3
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaService.java
  61. 4
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaVo.java
  62. 2
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseareatype/WmsWarehouseAreaTypeVo.java
  63. 3
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseinfo/WmsWarehouseInfoMapper.java
  64. 5
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseinfo/WmsWarehouseInfoMapper.xml
  65. 1
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseinfo/WmsWarehouseInfoQuery.java
  66. 7
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseinfo/WmsWarehouseInfoService.java
  67. 2
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseinfo/WmsWarehouseInfoVo.java
  68. 5
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackMapper.xml
  69. 1
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackQuery.java
  70. 4
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackService.java
  71. 3
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackVo.java
  72. 3
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousezone/WmsWarehouseZoneInitVo.java
  73. 8
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousezone/WmsWarehouseZoneMapper.xml
  74. 1
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousezone/WmsWarehouseZoneQuery.java
  75. 3
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousezone/WmsWarehouseZoneService.java
  76. 3
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousezone/WmsWarehouseZoneVo.java

8
yxt-as-ui/src/api/Common/dictcommons.js

@ -61,6 +61,14 @@ export function getListDeptByOrgSid(data) {
})
}
// 根据分公司Sid获取分公司下部门对应的采购系统
export function fetchDetailsByUseOrgSid(data) {
return request({
url: '/base/v1/basepurchasesystem/fetchDetailsByUseOrgSid/' + data,
method: 'GET'
})
}
// 根据部门sid查询部门信息
export function fetchByDepSid(data) {
return request({

12
yxt-as-ui/src/api/operation/salesInvoice.js

@ -4,7 +4,7 @@ export default {
// 查询分页列表
listPage: function(params) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/as/v1/salesInvoice/listPage',
method: 'post',
data: params,
@ -15,7 +15,7 @@ export default {
},
saveOrUpdate: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/as/v1/salesInvoice/saveOrUpdate',
method: 'post',
data: data,
@ -26,14 +26,14 @@ export default {
},
fetchBySid: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/as/v1/salesInvoice/fetchDetailsBySid/' + data,
method: 'get'
})
},
deleteBySids: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/as/v1/salesInvoice/delBySids',
method: 'DELETE',
data: data,
@ -44,7 +44,7 @@ export default {
},
submit: function(data) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/as/v1/salesInvoice/submit',
method: 'post',
data: data,
@ -56,7 +56,7 @@ export default {
salesOrderListPage: function(params) {
return request({
// baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
baseURL: "http://127.0.0.1:4523/m1/613533-0-default",
url: '/as/v1/salesInvoice/salesOrderListPage',
method: 'post',
data: params,

9
yxt-as-ui/src/api/warehouse/warehouse.js

@ -75,4 +75,13 @@ export default {
params: params,
})
},
// 根据仓库类型value 查询所有仓库
selectWarehouseByType: function(params) {
return request({
url: '/wms/apiadmin/base/wmswarehouseinfo/selectWarehouseByType',
method: 'get',
params: params,
})
},
}

2
yxt-as-ui/src/router/index.js

@ -207,7 +207,7 @@ export const constantRoutes = [{
component: () => import('@/views/operation/settleAccounts/settleAccounts.vue'),
name: 'SettleAccounts',
meta: {
title: '结算申请管理',
title: '维修单结算管理',
noCache: true
}
},

7
yxt-as-ui/src/views/basicinformation/additionitem/additionitem.vue

@ -27,13 +27,14 @@
<!--Start 主页面主要部分 -->
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" :border="true" style="width: 100%;" @selection-change="handleSelectionChange">
<el-table-column type="selection" align="center" width="50"/>
<el-table-column label="序号" type="index" width="80" :index="indexMethod" align="center"/>
<el-table-column label="操作" width="180px" align="center">
<el-table-column fixed type="selection" align="center" width="50"/>
<el-table-column fixed label="序号" type="index" width="80" :index="indexMethod" align="center"/>
<el-table-column fixed label="操作" width="180px" align="center">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="toEdit(scope.row)">编辑</el-button>
</template>
</el-table-column>
<el-table-column prop="useOrgName" label="隶属服务站" align="center" width="140" />
<el-table-column prop="aitemName" label="项目名称" align="center" />
<el-table-column prop="aitemCode" label="项目编码" align="center" />
<el-table-column prop="remarks" label="备注" align="center" />

3
yxt-as-ui/src/views/basicinformation/maintenanceProjectRecord/maintenanceProjectRecord.vue

@ -234,8 +234,9 @@ export default {
//
getList() {
this.listLoading = true
this.listQuery.params.createBySid = window.sessionStorage.getItem('userSid')
this.listQuery.params.userSid = window.sessionStorage.getItem('userSid')
this.listQuery.params.orgPath = window.sessionStorage.getItem('defaultOrgPath')
this.listQuery.params.menuUrl = this.$route.path
req.listPage(this.listQuery).then((response) => {
this.listLoading = false
if (response.success) {

7
yxt-as-ui/src/views/basicinformation/maintenanceitem/maintenanceitem.vue

@ -43,9 +43,9 @@
<!--Start 主页面主要部分 -->
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" :border="true" style="width: 100%;" @selection-change="handleSelectionChange">
<el-table-column type="selection" align="center" width="50"/>
<el-table-column label="序号" type="index" width="80" :index="indexMethod" align="center"/>
<el-table-column label="操作" width="180px" align="center">
<el-table-column fixed type="selection" align="center" width="50"/>
<el-table-column fixed label="序号" type="index" width="80" :index="indexMethod" align="center"/>
<el-table-column fixed label="操作" width="180px" align="center">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="toEdit(scope.row)">办理</el-button>
<el-button type="primary" size="mini" @click="toInfo(scope.row)">查看</el-button>
@ -61,6 +61,7 @@
<span>{{ scope.row.isEnable == '0' ? '禁用' : scope.row.isEnable == '1' ? '启用' : '' }}</span>
</template>
</el-table-column>
<el-table-column prop="useOrgName" label="隶属服务站" align="center" width="140" />
<el-table-column prop="sitemName" label="项目名称" align="center" width="130" />
<el-table-column prop="sitemCode" label="项目编码" align="center" width="100" />
<el-table-column prop="serviceType" label="工种" align="center" width="100" />

2
yxt-as-ui/src/views/basicinformation/profession/profession.vue

@ -34,7 +34,7 @@
<el-table-column prop="serviceTypeCode" label="类别编码" align="center" />
<el-table-column prop="percentageRate" label="提成比例" align="center" />
<el-table-column prop="percentageAmount" label="提成金额" align="center" />
<el-table-column prop="useOrgName" label="门店" align="center" />
<el-table-column prop="useOrgName" label="隶属服务站" align="center" />
</el-table>
</div>
<!--End 主页面主要部分-->

3
yxt-as-ui/src/views/basicinformation/sparePartsCommissionFiling/sparePartsCommissionFiling.vue

@ -234,7 +234,8 @@ export default {
//
getList() {
this.listLoading = true
this.listQuery.params.createBySid = window.sessionStorage.getItem('userSid')
this.listQuery.params.userSid = window.sessionStorage.getItem('userSid')
this.listQuery.params.menuUrl = this.$route.path
this.listQuery.params.orgPath = window.sessionStorage.getItem('defaultOrgPath')
req.listPage(this.listQuery).then((response) => {
this.listLoading = false

2
yxt-as-ui/src/views/basicinformation/subjects/subjects.vue

@ -33,7 +33,7 @@
<el-table-column prop="subjectCode" label="科目编码" align="center" />
<el-table-column prop="subjectType" label="类型" align="center" />
<el-table-column prop="sortNo" label="排序" align="center" />
<el-table-column prop="useOrgName" label="门店" align="center" />
<el-table-column prop="useOrgName" label="隶属服务站" align="center" />
</el-table>
</div>
<!--End 主页面主要部分-->

600
yxt-as-ui/src/views/goods/goods/goodsAdd2.vue

@ -20,25 +20,27 @@
<el-col :span="6">
<div class="span-sty"><span class="must">*</span> 商品名称</div>
<el-form-item prop="goodsName">
<el-input v-model="formobj.goodsName" placeholder="商品名称" class="addinputw addinputInfo" clearable/>
<el-input v-model="formobj.goodsName" placeholder="商品名称" class="addinputw addinputInfo" clearable />
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty"><span class="must">*</span> 商品编码</div>
<div class="span-sty"><span class="must">*</span> 图号</div>
<el-form-item prop="goodsCode">
<el-input v-model="formobj.goodsCode" placeholder="商品编码" class="addinputw addinputInfo" clearable/>
<el-input v-model="formobj.goodsCode" placeholder="图号" class="addinputw addinputInfo" clearable />
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">条形码</div>
<el-form-item>
<el-input v-model="formobj.barCode" placeholder="由系统自动生成" :readonly="true" class="addinputw addinputInfo" clearable/>
<el-input v-model="formobj.barCode" placeholder="由系统自动生成" :readonly="true" class="addinputw addinputInfo"
clearable />
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty"> 拼音缩写</div>
<el-form-item>
<el-input v-model="formobj.goodsPY" placeholder="由系统自动生成" :readonly="true" class="addinputw addinputInfo" clearable/>
<el-input v-model="formobj.goodsPY" placeholder="由系统自动生成" :readonly="true" class="addinputw addinputInfo"
clearable />
</el-form-item>
</el-col>
</el-row>
@ -46,29 +48,32 @@
<el-col :span="6">
<div class="span-sty"><span class="must">*</span> 计量单位</div>
<el-form-item prop="goodsUnitName">
<el-select v-model="formobj.goodsUnitName" placeholder="请选择计量单位" class="addinputw" @change="selectunitNameChange">
<el-option v-for="item in unitNameList" :key="item.sid" :label="item.unitName" :value="item.sid"/>
<el-select v-model="formobj.goodsUnitName" placeholder="请选择计量单位" class="addinputw"
@change="selectunitNameChange">
<el-option v-for="item in unitNameList" :key="item.sid" :label="item.unitName" :value="item.sid" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty"><span class="must">*</span> 商品类别</div>
<el-form-item prop="goodsTypeName">
<el-select v-model="formobj.goodsTypeName" placeholder="请选择商品类别" class="addinputw" @change="selectCateChange">
<el-option v-for="item in cateList" :key="item.sid" :label="item.goodsTypeName" :value="item.sid"/>
<el-select v-model="formobj.goodsTypeName" placeholder="请选择商品类别" class="addinputw"
@change="selectCateChange">
<el-option v-for="item in cateList" :key="item.sid" :label="item.goodsTypeName" :value="item.sid" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">规格</div>
<el-form-item>
<el-input v-model="formobj.indexes" placeholder="规格" class="addinputw addinputInfo" clearable/>
<el-input v-model="formobj.indexes" placeholder="规格" class="addinputw addinputInfo" clearable />
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">保质期()</div>
<el-form-item>
<el-input v-model="formobj.shelfLife " placeholder="保质期(天)" class="addinputw addinputInfo" clearable oninput="value=value.replace(/^(0+)|[^\d]+/g,'')"/>
<el-input v-model="formobj.shelfLife " placeholder="保质期(天)" class="addinputw addinputInfo" clearable
oninput="value=value.replace(/^(0+)|[^\d]+/g,'')" />
</el-form-item>
</el-col>
</el-row>
@ -77,22 +82,25 @@
<div class="span-sty"><span class="must">*</span> 品牌</div>
<el-form-item prop="brandName">
<el-select v-model="formobj.brandName" placeholder="请选择品牌" class="addinputw" @change="selectBrandChange">
<el-option v-for="item in brandList" :key="item.sid" :label="item.brandName" :value="item.sid"/>
<el-option v-for="item in brandList" :key="item.sid" :label="item.brandName" :value="item.sid" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty"><span class="must">*</span> 厂家</div>
<el-form-item prop="manufacturerName">
<el-select v-model="formobj.manufacturerName" placeholder="请选择厂家" class="addinputw" @change="selectfacturerChange">
<el-option v-for="item in facturerList" :key="item.sid" :label="item.manufacturerName" :value="item.sid"/>
<el-select v-model="formobj.manufacturerName" placeholder="请选择厂家" class="addinputw"
@change="selectfacturerChange">
<el-option v-for="item in facturerList" :key="item.sid" :label="item.manufacturerName"
:value="item.sid" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">原厂标志</div>
<el-form-item>
<el-radio-group v-model="formobj.isOriginalFactory" size="medium" style="margin-left: 120px;" @change="selectIsOriginalFactory">
<el-radio-group v-model="formobj.isOriginalFactory" size="medium" style="margin-left: 120px;"
@change="selectIsOriginalFactory">
<el-radio :label="'1'"></el-radio>
<el-radio :label="'2'"></el-radio>
</el-radio-group>
@ -103,13 +111,15 @@
<el-col :span="6">
<div class="span-sty"><span class="must">*</span> 库存上限</div>
<el-form-item prop="inventoryAlertUpperLimit">
<el-input v-model="formobj.inventoryAlertUpperLimit" placeholder="库存上限" class="addinputw addinputInfo" clearable oninput="value=value.replace(/^(0+)|[^\d]+/g,'')"/>
<el-input v-model="formobj.inventoryAlertUpperLimit" placeholder="库存上限" class="addinputw addinputInfo"
clearable oninput="value=value.replace(/^(0+)|[^\d]+/g,'')" />
</el-form-item>
</el-col>
<el-col :span="18">
<div class="span-sty"><span class="must">*</span> 库存下限</div>
<el-form-item prop="inventoryAlertLowerLimit">
<el-input v-model="formobj.inventoryAlertLowerLimit" placeholder="库存下限" class="addinputw addinputInfo" clearable oninput="value=value.replace(/^(0+)|[^\d]+/g,'')"/>
<el-input v-model="formobj.inventoryAlertLowerLimit" placeholder="库存下限" class="addinputw addinputInfo"
clearable oninput="value=value.replace(/^(0+)|[^\d]+/g,'')" />
</el-form-item>
</el-col>
</el-row>
@ -117,44 +127,48 @@
<el-col :span="6">
<div class="span-sty"><span class="must">*</span> 排序</div>
<el-form-item prop="sortNo">
<el-input v-model="formobj.sortNo" placeholder="排序" class="addinputw addinputInfo" clearable oninput="value=value.replace(/^(0+)|[^\d]+/g,'')"/>
<el-input v-model="formobj.sortNo" placeholder="排序" class="addinputw addinputInfo" clearable
oninput="value=value.replace(/^(0+)|[^\d]+/g,'')" />
</el-form-item>
</el-col>
<el-col :span="18">
<div class="span-sty">备注</div>
<el-form-item>
<el-input v-model="formobj.skuRemarks" placeholder="备注" class="addinputw addinputInfo" clearable/>
<el-input v-model="formobj.skuRemarks" placeholder="备注" class="addinputw addinputInfo" clearable />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">锁定销售</div>
<div class="span-sty">锁定销售价</div>
<el-form-item>
<el-radio-group v-model="formobj.isLockingSalesPrice" size="small" style="margin-left: 120px;" @change="selectIsLockingSalesPrice">
<el-radio-group v-model="formobj.isLockingSalesPrice" size="small" style="margin-left: 120px;"
@change="selectIsLockingSalesPrice">
<el-radio :label="'1'"></el-radio>
<el-radio :label="'2'"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">销售</div>
<div class="span-sty">销售价</div>
<el-form-item>
<el-input v-model="formobj.minimumSalesPrice" placeholder="销售底价" class="addinputw addinputInfo" clearable oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')"/>
<el-input v-model="formobj.minimumSalesPrice" placeholder="销售价" class="addinputw addinputInfo" clearable
oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')" />
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">三包价格</div>
<el-form-item>
<el-input v-model="formobj.standardPurchasePrice" placeholder="三包价格" class="addinputw addinputInfo" clearable
oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')"/>
<el-input v-model="formobj.standardPurchasePrice" placeholder="三包价格" class="addinputw addinputInfo"
clearable
oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')" />
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">首保价格</div>
<el-form-item>
<el-input v-model="formobj.agencyPrice" placeholder="首保价格" class="addinputw addinputInfo" clearable
oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')"/>
oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')" />
</el-form-item>
</el-col>
</el-row>
@ -162,7 +176,8 @@
<el-col :span="24">
<div class="span-sty">商品图片</div>
<el-form-item>
<upload-img ref="uploadImg" class="addinputw addinputInfo" v-model="imgList" :limit="50" bucket="map" :upload-data="{ type: '0001' }" @change="backData"/>
<upload-img ref="uploadImg" class="addinputw addinputInfo" v-model="imgList" :limit="50" bucket="map"
:upload-data="{ type: '0001' }" @change="backData" />
</el-form-item>
</el-col>
</el-row>
@ -172,289 +187,292 @@
</template>
<script>
import req from '@/api/goods/goods.js'
import req2 from '@/api/goods/brand.js'
import req3 from '@/api/goods/category.js'
import req4 from '@/api/goods/factory.js'
import req5 from '@/api/goods/unit.js'
import { getOrgSidByPath } from '@/api/Common/dictcommons'
import uploadImg from '@/components/uploadFile/uploadImg'
import req from '@/api/goods/goods.js'
import req2 from '@/api/goods/brand.js'
import req3 from '@/api/goods/category.js'
import req4 from '@/api/goods/factory.js'
import req5 from '@/api/goods/unit.js'
import {
getOrgSidByPath
} from '@/api/Common/dictcommons'
import uploadImg from '@/components/uploadFile/uploadImg'
export default {
components: {
uploadImg
},
data() {
return {
listLoading: false,
activeNames: ['1'],
imgList: [],
submitdisabled: false,
formobj: {
sid: '',
userSid: '',
orgPath: '',
useOrgSid: '',
createOrgSid: '',
goodsName: '',
goodsCode: '',
goodsPY: '',
barCode: '',
goodsUnitSid: '',
goodsUnitName: '',
goodsTypeSid: '',
goodsTypeName: '',
indexes: '',
shelfLife: '',
brandSid: '',
brandName: '',
manufacturerSid: '',
manufacturerName: '',
isOriginalFactory: '2',
isOriginalFactoryValue: '',
sortNo: '',
skuRemarks: '',
inventoryAlertUpperLimit: '',
inventoryAlertLowerLimit: '',
isLockingSalesPrice: '2',
isLockingSalesPriceValue: '',
minimumSalesPrice: '',
standardPurchasePrice: '',
agencyPrice: '',
picPath: []
},
brandList: [],
cateList: [],
facturerList: [],
unitNameList: [],
rules: {
goodsName: [{
required: true,
message: '商品名称不能为空',
trigger: 'blur'
}],
goodsCode: [{
required: true,
message: '商品编码不能为空',
trigger: 'blur'
}],
goodsUnitName: [{
required: true,
message: '请选择计量单位',
trigger: 'change'
}],
goodsTypeName: [{
required: true,
message: '请选择商品类别',
trigger: 'change'
}],
brandName: [{
required: true,
message: '请选择商品品牌',
trigger: 'change'
}],
manufacturerName: [{
required: true,
message: '请选择商品厂家',
trigger: 'change'
}],
sortNo: [{
required: true,
message: '商品排序不能为空',
trigger: 'blur'
}],
inventoryAlertUpperLimit: [{
required: true,
message: '商品上限不能为空',
trigger: 'blur'
}],
inventoryAlertLowerLimitt: [{
required: true,
message: '商品下限不能为空',
trigger: 'blur'
}]
}
}
},
methods: {
selectIsOriginalFactory(val) {
console.log('selectIsOriginalFactory》》》》', val)
this.formobj.isOriginalFactoryValue = val === '1' ? '是' : '否'
},
selectIsLockingSalesPrice(val) {
console.log('selectIsLockingSalesPrice》》》》', val)
this.formobj.isLockingSalesPriceValue = val === '1' ? '是' : '否'
},
initData(deptSid) {
var parpams = { useOrgSid: deptSid }
req2.getAllBrand(parpams).then(resp => {
this.brandList = resp.data
})
req3.getAllType(parpams).then(resp => {
this.cateList = resp.data
})
req4.getAllFacturer(parpams).then(resp => {
this.facturerList = resp.data
})
req5.getAllUnit(parpams).then(resp => {
this.unitNameList = resp.data
})
export default {
components: {
uploadImg
},
showAdd(userSid, orgSid, deptSid) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.formobj.userSid = userSid
this.formobj.useOrgSid = deptSid
this.formobj.createOrgSid = orgSid
this.initData(deptSid)
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.initGoods(row.sid).then(resp => {
if (resp.success) {
this.formobj = resp.data
this.initData(this.formobj.useOrgSid)
for (var i = 0; i < resp.data.picPath.length; i++) {
var item = resp.data.picPath[i]
this.imgList.push({
url: item.url
})
}
data() {
return {
listLoading: false,
activeNames: ['1'],
imgList: [],
submitdisabled: false,
formobj: {
sid: '',
userSid: '',
orgPath: '',
useOrgSid: '',
createOrgSid: '',
goodsName: '',
goodsCode: '',
goodsPY: '',
barCode: '',
goodsUnitSid: '',
goodsUnitName: '',
goodsTypeSid: '',
goodsTypeName: '',
indexes: '',
shelfLife: '',
brandSid: '',
brandName: '',
manufacturerSid: '',
manufacturerName: '',
isOriginalFactory: '2',
isOriginalFactoryValue: '',
sortNo: '',
skuRemarks: '',
inventoryAlertUpperLimit: '',
inventoryAlertLowerLimit: '',
isLockingSalesPrice: '2',
isLockingSalesPriceValue: '',
minimumSalesPrice: '',
standardPurchasePrice: '',
agencyPrice: '',
picPath: []
},
brandList: [],
cateList: [],
facturerList: [],
unitNameList: [],
rules: {
goodsName: [{
required: true,
message: '商品名称不能为空',
trigger: 'blur'
}],
goodsCode: [{
required: true,
message: '商品编码不能为空',
trigger: 'blur'
}],
goodsUnitName: [{
required: true,
message: '请选择计量单位',
trigger: 'change'
}],
goodsTypeName: [{
required: true,
message: '请选择商品类别',
trigger: 'change'
}],
brandName: [{
required: true,
message: '请选择商品品牌',
trigger: 'change'
}],
manufacturerName: [{
required: true,
message: '请选择商品厂家',
trigger: 'change'
}],
sortNo: [{
required: true,
message: '商品排序不能为空',
trigger: 'blur'
}],
inventoryAlertUpperLimit: [{
required: true,
message: '商品上限不能为空',
trigger: 'blur'
}],
inventoryAlertLowerLimitt: [{
required: true,
message: '商品下限不能为空',
trigger: 'blur'
}]
}
}).catch(e => {
this.formobj = row
})
},
selectBrandChange(val) {
const choose = this.brandList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectBrandChange', choose)
this.formobj.brandSid = choose[0].sid
this.formobj.brandName = choose[0].brandName
},
selectCateChange(val) {
const choose = this.cateList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectCateChange', choose)
this.formobj.goodsTypeSid = choose[0].sid
this.formobj.goodsTypeName = choose[0].goodsTypeName
},
selectfacturerChange(val) {
const choose = this.facturerList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectfacturerChange', choose)
this.formobj.manufacturerSid = choose[0].sid
this.formobj.manufacturerName = choose[0].manufacturerName
},
selectunitNameChange(val) {
const choose = this.unitNameList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectunitNameChange', choose)
this.formobj.goodsUnitSid = choose[0].sid
this.formobj.goodsUnitName = choose[0].unitName
},
backData(value) {
console.log('backData》》》》', value)
console.log('imgList', this.imgList)
this.formobj.picPath = this.imgList
}
},
saveOrUpdate() {
console.log('>>>>>>>>>saveOrUpdate', this.formobj)
this.$refs['form_obj'].validate((valid) => {
if (valid) {
req.saveGoods(this.formobj).then(resp => {
if (resp.success) {
this.$message({
showClose: true,
type: 'success',
message: resp.msg
methods: {
selectIsOriginalFactory(val) {
console.log('selectIsOriginalFactory》》》》', val)
this.formobj.isOriginalFactoryValue = val === '1' ? '是' : '否'
},
selectIsLockingSalesPrice(val) {
console.log('selectIsLockingSalesPrice》》》》', val)
this.formobj.isLockingSalesPriceValue = val === '1' ? '是' : '否'
},
initData(deptSid) {
var parpams = {
useOrgSid: deptSid
}
req2.getAllBrand(parpams).then(resp => {
this.brandList = resp.data
})
req3.getAllType(parpams).then(resp => {
this.cateList = resp.data
})
req4.getAllFacturer(parpams).then(resp => {
this.facturerList = resp.data
})
req5.getAllUnit(parpams).then(resp => {
this.unitNameList = resp.data
})
},
showAdd(userSid, orgSid, deptSid) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.formobj.userSid = userSid
this.formobj.useOrgSid = deptSid
this.formobj.createOrgSid = orgSid
this.initData(deptSid)
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.initGoods(row.sid).then(resp => {
if (resp.success) {
this.formobj = resp.data
this.initData(this.formobj.useOrgSid)
for (var i = 0; i < resp.data.picPath.length; i++) {
var item = resp.data.picPath[i]
this.imgList.push({
url: item.url
})
this.handleReturn('true')
} else {
// resp.code
}
}).catch(() => {
})
}
}).catch(e => {
this.formobj = row
})
},
selectBrandChange(val) {
const choose = this.brandList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectBrandChange', choose)
this.formobj.brandSid = choose[0].sid
this.formobj.brandName = choose[0].brandName
},
selectCateChange(val) {
const choose = this.cateList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectCateChange', choose)
this.formobj.goodsTypeSid = choose[0].sid
this.formobj.goodsTypeName = choose[0].goodsTypeName
},
selectfacturerChange(val) {
const choose = this.facturerList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectfacturerChange', choose)
this.formobj.manufacturerSid = choose[0].sid
this.formobj.manufacturerName = choose[0].manufacturerName
},
selectunitNameChange(val) {
const choose = this.unitNameList.filter((item) => item.sid === val)
console.log('>>>>>>>>>selectunitNameChange', choose)
this.formobj.goodsUnitSid = choose[0].sid
this.formobj.goodsUnitName = choose[0].unitName
},
backData(value) {
console.log('backData》》》》', value)
console.log('imgList', this.imgList)
this.formobj.picPath = this.imgList
},
saveOrUpdate() {
console.log('>>>>>>>>>saveOrUpdate', this.formobj)
this.$refs['form_obj'].validate((valid) => {
if (valid) {
req.saveGoods(this.formobj).then(resp => {
if (resp.success) {
this.$message({
showClose: true,
type: 'success',
message: resp.msg
})
this.handleReturn('true')
} else {
// resp.code
}
}).catch(() => {})
}
})
},
handleReturn(isreload) {
if (isreload === 'true') this.$emit('reloadlist')
this.formobj = {
sid: '',
userSid: '',
orgPath: '',
useOrgSid: '',
createOrgSid: '',
goodsName: '',
goodsCode: '',
goodsPY: '',
barCode: '',
goodsUnitSid: '',
goodsUnitName: '',
goodsTypeSid: '',
goodsTypeName: '',
indexes: '',
shelfLife: '',
brandSid: '',
brandName: '',
manufacturerSid: '',
manufacturerName: '',
isOriginalFactory: '2',
isOriginalFactoryValue: '',
sortNo: '',
skuRemarks: '',
inventoryAlertUpperLimit: '',
inventoryAlertLowerLimit: '',
isLockingSalesPrice: '2',
isLockingSalesPriceValue: '',
minimumSalesPrice: '',
standardPurchasePrice: '',
agencyPrice: '',
picPath: []
}
})
},
handleReturn(isreload) {
if (isreload === 'true') this.$emit('reloadlist')
this.formobj = {
sid: '',
userSid: '',
orgPath: '',
useOrgSid: '',
createOrgSid: '',
goodsName: '',
goodsCode: '',
goodsPY: '',
barCode: '',
goodsUnitSid: '',
goodsUnitName: '',
goodsTypeSid: '',
goodsTypeName: '',
indexes: '',
shelfLife: '',
brandSid: '',
brandName: '',
manufacturerSid: '',
manufacturerName: '',
isOriginalFactory: '2',
isOriginalFactoryValue: '',
sortNo: '',
skuRemarks: '',
inventoryAlertUpperLimit: '',
inventoryAlertLowerLimit: '',
isLockingSalesPrice: '2',
isLockingSalesPriceValue: '',
minimumSalesPrice: '',
standardPurchasePrice: '',
agencyPrice: '',
picPath: []
this.imgList = []
this.$emit('doback')
}
this.imgList = []
this.$emit('doback')
}
}
}
</script>
<style scoped>
/deep/ .el-form-item__error {
margin-left: 120px !important;
}
/deep/ .el-form-item__error {
margin-left: 120px !important;
}
.must {
color: #f00;
}
.must {
color: #f00;
}
.span-sty {
width: 130px !important;
}
.span-sty {
width: 130px !important;
}
.addinputInfo {
margin-left: 120px !important;
}
.addinputInfo {
margin-left: 120px !important;
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
margin-left: 120px !important;
width: calc(100% - 115px);
}
.formaddcopy02 .el-row .el-col /deep/ .el-form-item .addinputw {
margin-left: 120px !important;
width: calc(100% - 115px);
}
.first_row {
border-top: 1px solid #E0E3EB;
}
.first_row {
border-top: 1px solid #E0E3EB;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.el-radio /deep/ .el-radio__label {
.el-radio /deep/ .el-radio__label {
font-size: 14px !important;
font-size: 14px !important;
}
}
</style>

398
yxt-as-ui/src/views/goods/goods/goodsInfo2.vue

@ -1,209 +1,211 @@
<template>
<div>
<div class="tab-header webtop">
<!-- 标题 -->
<div>商品信息</div>
<!-- start 添加修改按钮 -->
<div>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
<div>
<div class="tab-header webtop">
<!-- 标题 -->
<div>商品信息</div>
<!-- start 添加修改按钮 -->
<div>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
<!-- end 添加修改按钮 -->
<!-- end 详情按钮 -->
</div>
<!-- end 添加修改按钮 -->
<!-- end 详情按钮 -->
</div>
<div class="listconadd">
<div class="listconadd">
<el-form ref="form_obj" :model="formobj" class="formaddcopy02">
<!-- <div class="title">
<el-form ref="form_obj" :model="formobj" class="formaddcopy02">
<!-- <div class="title">
<div>基础信息</div>
</div> -->
<el-row class="first_row">
<el-col :span="6">
<div class="span-sty">商品名称</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">商品编码</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsCode}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">条形码</div>
<el-form-item>
<span class="addinputInfo">{{formobj.barCode}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">拼音缩写</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsPY}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">计量单位</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsUnitName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">商品类别</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsTypeName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">规格</div>
<el-form-item>
<span class="addinputInfo">{{formobj.indexes}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">保质期()</div>
<el-form-item>
<span class="addinputInfo">{{formobj.shelfLife}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">品牌</div>
<el-form-item>
<span class="addinputInfo">{{formobj.brandName}}</span>
</el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">厂家</div>
<el-form-item>
<span class="addinputInfo">{{formobj.manufacturerName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">原厂标志</div>
<el-form-item>
<el-radio-group v-model="formobj.isOriginalFactory" :disabled="true" size="small" style="margin-left: 120px;">
<el-radio :label="'1'"></el-radio>
<el-radio :label="'2'"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">库存上限</div>
<el-form-item>
<span class="addinputInfo">{{formobj.inventoryAlertUpperLimit}}</span>
</el-form-item>
</el-col>
<el-col :span="18">
<div class="span-sty">库存下限</div>
<el-form-item>
<span class="addinputInfo">{{formobj.inventoryAlertLowerLimit}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">排序</div>
<el-form-item>
<span class="addinputInfo">{{formobj.sortNo}}</span>
</el-form-item>
</el-col>
<el-col :span="18">
<div class="span-sty">备注</div>
<el-form-item>
<span class="addinputInfo">{{formobj.skuRemarks}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">锁定销售定价</div>
<el-form-item>
<el-radio-group v-model="formobj.isLockingSalesPrice" :disabled="true" size="small" style="margin-left: 120px;">
<el-radio :label="'1'"></el-radio>
<el-radio :label="'2'"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">销售底价</div>
<el-form-item>
<span class="addinputInfo">{{formobj.minimumSalesPrice}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">三包价格</div>
<el-form-item>
<span class="addinputInfo">{{formobj.standardPurchasePrice}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">首保价格</div>
<el-form-item>
<span class="addinputInfo">{{formobj.agencyPrice}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">规格图片</div>
<el-form-item>
<template slot-scope="scope">
<span v-for="(item,index) in formobj.picPath" :key="index" class="addinputInfo">
<el-popover placement="left" trigger="click" width="300">
<img :src="item.url" width="100%" />
<img slot="reference" :src="item.url" :alt="item.url"
style="max-height: 70px;max-width: 70px; padding: 5px" />
</el-popover>
</span>
</template>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-row class="first_row">
<el-col :span="6">
<div class="span-sty">商品名称</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">图号</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsCode}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">条形码</div>
<el-form-item>
<span class="addinputInfo">{{formobj.barCode}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">拼音缩写</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsPY}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">计量单位</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsUnitName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">商品类别</div>
<el-form-item>
<span class="addinputInfo">{{formobj.goodsTypeName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">规格</div>
<el-form-item>
<span class="addinputInfo">{{formobj.indexes}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">保质期()</div>
<el-form-item>
<span class="addinputInfo">{{formobj.shelfLife}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">品牌</div>
<el-form-item>
<span class="addinputInfo">{{formobj.brandName}}</span>
</el-form-item>
</el-col>
<el-col :span="12">
<div class="span-sty">厂家</div>
<el-form-item>
<span class="addinputInfo">{{formobj.manufacturerName}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">原厂标志</div>
<el-form-item>
<el-radio-group v-model="formobj.isOriginalFactory" :disabled="true" size="small"
style="margin-left: 120px;">
<el-radio :label="'1'"></el-radio>
<el-radio :label="'2'"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">库存上限</div>
<el-form-item>
<span class="addinputInfo">{{formobj.inventoryAlertUpperLimit}}</span>
</el-form-item>
</el-col>
<el-col :span="18">
<div class="span-sty">库存下限</div>
<el-form-item>
<span class="addinputInfo">{{formobj.inventoryAlertLowerLimit}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">排序</div>
<el-form-item>
<span class="addinputInfo">{{formobj.sortNo}}</span>
</el-form-item>
</el-col>
<el-col :span="18">
<div class="span-sty">备注</div>
<el-form-item>
<span class="addinputInfo">{{formobj.skuRemarks}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<div class="span-sty">锁定销售价</div>
<el-form-item>
<el-radio-group v-model="formobj.isLockingSalesPrice" :disabled="true" size="small"
style="margin-left: 120px;">
<el-radio :label="'1'"></el-radio>
<el-radio :label="'2'"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">销售价</div>
<el-form-item>
<span class="addinputInfo">{{formobj.minimumSalesPrice}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">三包价格</div>
<el-form-item>
<span class="addinputInfo">{{formobj.standardPurchasePrice}}</span>
</el-form-item>
</el-col>
<el-col :span="6">
<div class="span-sty">首保价格</div>
<el-form-item>
<span class="addinputInfo">{{formobj.agencyPrice}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">规格图片</div>
<el-form-item>
<template slot-scope="scope">
<span v-for="(item,index) in formobj.picPath" :key="index" class="addinputInfo">
<el-popover placement="left" trigger="click" width="300">
<img :src="item.url" width="100%" />
<img slot="reference" :src="item.url" :alt="item.url"
style="max-height: 70px;max-width: 70px; padding: 5px" />
</el-popover>
</span>
</template>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
</div>
</div>
</template>
<script>

20
yxt-as-ui/src/views/goods/goods/index.vue

@ -77,7 +77,7 @@
</template>
</el-table-column> -->
<el-table-column fixed prop="goodsName" label="商品名称" width="120" align="center" />
<el-table-column prop="goodsCode" label="商品编码" width="120" align="center" />
<el-table-column fixed prop="goodsCode" label="图号" width="120" align="center" />
<el-table-column prop="goodsPY" label="拼音缩写" width="100" align="center" />
<el-table-column prop="barCode" label="商品条码" width="100" align="center" />
<el-table-column prop="goodsUnitName" label="计量单位" width="100" align="center" />
@ -90,7 +90,7 @@
<el-table-column prop="inventoryAlertUpperLimit" label="库存上限" width="100" align="center" />
<el-table-column prop="inventoryAlertLowerLimit" label="库存下限" width="100" align="center" />
<el-table-column prop="isLockingSalesPriceValue" label="锁定销售价" width="100" align="center" />
<el-table-column prop="minimumSalesPrice" label="销售价" width="100" align="center" />
<el-table-column prop="minimumSalesPrice" label="销售价" width="100" align="center" />
<el-table-column prop="standardPurchasePrice" label="三包价格" width="100" align="center" />
<el-table-column prop="agencyPrice" label="首保价格" width="100" align="center" />
<el-table-column label="商品图片" align="center" width="100">
@ -147,7 +147,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './goodsAdd2.vue'
import divInfo from './goodsInfo2.vue'
import { getOrgSidByPath } from '@/api/Common/dictcommons'
import {
getOrgSidByPath
} from '@/api/Common/dictcommons'
export default {
components: {
ButtonBar,
@ -231,7 +233,10 @@
},
methods: {
initData() {
var parpams = { useOrgSid: window.sessionStorage.getItem('defaultOrgPath').substring(window.sessionStorage.getItem('defaultOrgPath').lastIndexOf('/') + 1) }
var parpams = {
useOrgSid: window.sessionStorage.getItem('defaultOrgPath').substring(window.sessionStorage.getItem(
'defaultOrgPath').lastIndexOf('/') + 1)
}
//
req2.getAllBrand(parpams).then(resp => {
console.log('>>>>>>>>>getAllBrand', resp)
@ -362,12 +367,15 @@
toAdd() {
this.viewState = 2
var orgSid = ''
getOrgSidByPath({ orgPath: window.sessionStorage.getItem('defaultOrgPath') }).then((res) => {
getOrgSidByPath({
orgPath: window.sessionStorage.getItem('defaultOrgPath')
}).then((res) => {
if (res.success) {
orgSid = res.data
}
})
this.$refs['divadd'].showAdd(window.sessionStorage.getItem('userSid'), orgSid, window.sessionStorage.getItem('defaultOrgPath').substring(window.sessionStorage.getItem('defaultOrgPath').lastIndexOf('/') + 1))
this.$refs['divadd'].showAdd(window.sessionStorage.getItem('userSid'), orgSid, window.sessionStorage.getItem(
'defaultOrgPath').substring(window.sessionStorage.getItem('defaultOrgPath').lastIndexOf('/') + 1))
},
toEdit() {

143
yxt-as-ui/src/views/operation/repairbill/repairbillAdd.vue

@ -9,7 +9,7 @@
<el-button type="primary" size="small" :disabled="submitdisabled" @click="toSendBack" v-show="formobj.nodeName !== '登记'">退回</el-button>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="confirmCLF()" v-show="formobj.nodeName == '结算' && formobj.subject == '保内'">确认材料费</el-button>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="toPrintSettle()" v-show="formobj.nodeName == '结算'">打印结算单</el-button>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="settleAccounts()" v-show="formobj.nodeName == '结算'">结算</el-button>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="toSettle()" v-show="formobj.nodeName == '结算'">结算</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
@ -537,70 +537,7 @@
<!-- 选择客户 -->
<selectCustomer v-show="viewState == 2" ref="divCus" @backData="backData" @doback="resetState"/>
<!-- 结算 -->
<el-dialog :visible.sync="settleVisible" width="70%">
<el-form ref="formobj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row style="border-top: 1px solid #e0e3eb">
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>付款人姓名</div>
<el-form-item prop="settleVo.payerName"><el-input class="addinputInfo addinputw" v-model="formobj.settleVo.payerName" clearable placeholder="" /></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">付款人编号</div>
<el-form-item><el-input class="addinputInfo addinputw" v-model="formobj.settleVo.payerNo" clearable placeholder="" /></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">应收金额</div>
<el-form-item><span class="addinputInfo">{{ ysTotal }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">订金抵扣</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="formobj.settleVo.depositdeductAmount = getNumber(formobj.settleVo.depositdeductAmount, 2)" v-model="formobj.settleVo.depositdeductAmount" clearable placeholder="" /></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>结算方式</div>
<el-form-item prop="settleVo.settleValue">
<el-select class="addinputInfo" v-model="formobj.settleVo.settleValue" placeholder="请选择" @change="settleChange" clearable filterable>
<el-option v-for="item in settle_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictValue"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>结算金额</div>
<el-form-item prop="settleVo.settleAmount"><el-input class="addinputInfo addinputw" @keyup.native="formobj.settleVo.settleAmount = getNumber(formobj.settleVo.settleAmount, 2)" v-model="formobj.settleVo.settleAmount" clearable placeholder="" /></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">其他结算方式</div>
<el-form-item>
<el-select class="addinputInfo" v-model="formobj.settleVo.otherSettleValue" placeholder="请选择" @change="otherSettleChange" clearable filterable>
<el-option v-for="item in otherSettle_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictValue"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">其他结算金额</div>
<el-form-item><el-input class="addinputInfo addinputw" @keyup.native="formobj.settleVo.otherSettleAmount = getNumber(formobj.settleVo.otherSettleAmount, 2)" v-model="formobj.settleVo.otherSettleAmount" clearable placeholder="" /></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">欠款金额</div>
<el-form-item><span class="addinputInfo">{{ qkjeTotal }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty"><span class="icon">*</span>结算时间</div>
<el-form-item prop="settleVo.settleTime"><el-date-picker class="addinputInfo addinputw" v-model="formobj.settleVo.settleTime" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期" /></el-form-item>
</el-col>
</el-row>
</el-form>
<div style="text-align:center;margin-top: 20px;">
<el-button type="primary" size="mini" @click="confirm"> </el-button>
<el-button type="info " size="mini" @click="settleVisible = false"> </el-button>
</div>
</el-dialog>
<settleAccountsAdd v-show="viewState == 3" ref="divSettle" @doback="resetState" />
<!-- 打印结算单保内 -->
<el-dialog title="打印类型" :visible.sync="dialogVisible" width="25%" :show-close="false">
<el-form :model="temp" class="formaddcopy02">
@ -628,12 +565,14 @@ import req from '@/api/operation/repairbill'
import additionitem from '@/api/basicinformation/additionitem'
import { selAllByOrgSidPath, selSubjectInfo, getGroupList, typeValues, getListByUseOrgSid, getServiceItemListPage, getInvoicingList } from '@/api/Common/dictcommons'
import selectCustomer from '@/components/publicPage/selectCustomer'
import settleAccountsAdd from '@/views/operation/settleAccounts/settleAccountsAdd'
import { getStorage } from '@/utils/auth'
export default {
name: 'RepairBillAdd',
components: {
selectCustomer
selectCustomer,
settleAccountsAdd
},
data() {
const claimManufacturerShClaimType = (rule, value, callback) => {
@ -669,7 +608,6 @@ export default {
group_list: [], //
mainRepairersChange_list: [], //
people_list: [], //
settleVisible: false, //
billType_list: [], //
responsibility_list: [], //
responsibilityRatio_list: [], //
@ -678,8 +616,6 @@ export default {
insuranceCompany_list: [], //
companyInvoicing_list: [], //
invoiceType_list: [], //
settle_list: [], //
otherSettle_list: [], //
activeNames: '1',
tableKey: 0,
index: 0,
@ -830,11 +766,7 @@ export default {
waitorName: [{ required: true, message: '服务顾问不能为空', trigger: 'change' }],
isSpecialSign: [{ required: true, message: '特殊标志不能为空', trigger: 'change' }],
customerName: [{ required: true, message: '客户信息不能为空', trigger: 'change' }],
claimManufacturerAndShClaimType: [{ required: true, validator: claimManufacturerShClaimType, trigger: 'change' }],
'settleVo.payerName': [{ required: true, message: '付款人姓名不能为空', trigger: 'blur' }],
'settleVo.settleValue': [{ required: true, message: '结算方式不能为空', trigger: 'change' }],
'settleVo.settleAmount': [{ required: true, message: '结算金额不能为空', trigger: 'blur' }],
'settleVo.settleTime': [{ required: true, message: '结算时间不能为空', trigger: 'blur' }]
claimManufacturerAndShClaimType: [{ required: true, validator: claimManufacturerShClaimType, trigger: 'change' }]
}
}
},
@ -912,12 +844,6 @@ export default {
let ysje = '0'
ysje = Math.round((parseFloat(ysje) + parseFloat(this.ysTotal) - parseFloat(this.yhTotal)) * 100) / 100
return ysje
},
// = - - -
qkjeTotal() {
let qkje = '0'
// qkje = Math.round((parseFloat(this.ysjeTotal) - parseFloat(this.formobj.settleVo.depositdeductAmount !== '' ? this.formobj.settleVo.depositdeductAmount : '0') - parseFloat(this.formobj.settleVo.settleAmount !== '' ? this.formobj.settleVo.settleAmount : '0') - parseFloat(this.formobj.settleVo.otherSettleAmount !== '' ? this.formobj.settleVo.otherSettleAmount : '0')) * 100) / 100
return qkje
}
},
methods: {
@ -957,16 +883,6 @@ export default {
this.invoiceType_list = res.data
}
})
typeValues({ type: 'settle' }).then((res) => {
if (res.success) {
this.settle_list = res.data
}
})
typeValues({ type: 'otherSettle' }).then((res) => {
if (res.success) {
this.otherSettle_list = res.data
}
})
typeValues({ type: 'sh_claim_type' }).then((res) => {
if (res.success) {
this.shClaimType_list = res.data
@ -1644,42 +1560,6 @@ export default {
}
})
},
settleAccounts() {
this.settleVisible = true
},
settleChange(value) {
const choose = this.settle_list.filter((item) => item.dictValue === value)
if (choose.length > 0 && choose !== null) {
this.formobj.settleVo.settleKey = choose[0].dictKey
} else {
this.formobj.settleVo.settleKey = ''
}
},
otherSettleChange(value) {
const choose = this.otherSettle_list.filter((item) => item.dictValue === value)
if (choose.length > 0 && choose !== null) {
this.formobj.settleVo.otherSettleKey = choose[0].dictKey
} else {
this.formobj.settleVo.otherSettleKey = ''
}
},
confirm() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {
this.submitdisabled = true
req.settle(this.formobj).then((res) => {
if (res.success) {
this.$message({ showClose: true, type: 'success', message: '结算成功' })
this.handleReturn('true')
} else {
this.submitdisabled = false
}
}).catch(() => {
this.submitdisabled = false
})
}
})
},
confirmCLF() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {
@ -1742,6 +1622,16 @@ export default {
this.$message({ showClose: true, type: 'error', message: '打印类型不能为空' })
}
},
toSettle() {
req.settle(this.formobj).then((res) => {
if (res.success) {
this.viewState = 3
this.$refs['divSettle'].showEdit(this.formobj)
} else {
this.$message({ showClose: true, type: 'error', message: res.msg })
}
})
},
resetState() {
this.viewState = 1
},
@ -1860,7 +1750,6 @@ export default {
this.serviceData = []
this.subjoinData = []
this.activeNames = '1'
this.settleVisible = false
this.submitdisabled = false
this.$emit('doback')
}

4
yxt-as-ui/src/views/operation/settleAccounts/settleAccounts.vue

@ -2,7 +2,7 @@
<div class="app-container">
<!--列表页面-->
<div v-show="viewState == 1">
<button-bar view-title="结算申请管理" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle"/>
<button-bar view-title="维修单结算申请管理" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle"/>
<!--Start查询列表部分-->
<div class="main-content">
<div class="searchcon">
@ -46,7 +46,7 @@
</div>
<!--End查询列表部分-->
<div class="listtop">
<div class="tit">结算申请列表</div>
<div class="tit">维修单结算申请列表</div>
<pageye v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
<!--Start 主页面主要部分 -->

124
yxt-as-ui/src/views/operation/settleAccounts/settleAccountsAdd.vue

@ -4,7 +4,6 @@
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="saveOrUpdate()">保存</el-button>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="submit()">提交</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
@ -46,7 +45,7 @@
<el-form-item><span class="addinputInfo">{{ formobj.waitorName }}</span></el-form-item>
</el-col>
</el-row>
<el-row v-if="formobj.billType !== ''">
<el-row>
<el-col :span="8">
<div class="span-sty">维修单类型</div>
<el-form-item><span class="addinputInfo">{{ formobj.billType }}</span></el-form-item>
@ -74,7 +73,7 @@
<el-form-item><span class="addinputInfo">{{ formobj.vehMark }}/{{ formobj.vinNo }}</span></el-form-item>
</el-col>
</el-row>
<el-row v-if="formobj.billType !== ''">
<el-row>
<el-col :span="8">
<div class="span-sty">是否开票</div>
<el-form-item><span class="addinputInfo">{{ formobj.isInvoicing == '1' ? '是' : formobj.isInvoicing == '0' ? '否' : '' }}</span></el-form-item>
@ -110,29 +109,38 @@
<el-form-item><span class="addinputInfo">{{ formobj.profit }}</span></el-form-item>
</el-col>
</el-row>
<div v-if="formobj.sitemVos.length > 0">
<div class="title">维修项目</div>
<el-table :key="serviceKey" :data="formobj.sitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="200" />
<el-table-column prop="sitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
</div>
<div class="title">维修项目</div>
<el-table :key="serviceKey" :data="formobj.sitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="200" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="150" />
<el-table-column prop="hours" label="工时数" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="sitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="200" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">商品</div>
<el-table :key="tableKey" :data="formobj.goodsDetailsVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center" />
<el-table-column prop="goodsID" label="商品ID" align="center" width="200" />
<el-table-column prop="goodsSpuName" label="商品名称" width="100" align="center" />
<el-table-column prop="goodsSkuCode" label="图号" width="100" align="center" />
<el-table-column prop="count" label="数量" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="goodsReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="goodsSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column prop="partsSellers" label="配件销售人" align="center" min-width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">附加项目</div>
@ -146,7 +154,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.outCost = getNumber(formobj.outCost, 2)" v-model="formobj.outCost" clearable placeholder="" />
<span>利润额{{ formobj.outPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.outRemarks }}</span></el-form-item>
</el-col>
@ -161,7 +178,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.subsidyCost = getNumber(formobj.subsidyCost, 2)" v-model="formobj.subsidyCost" clearable placeholder="" />
<span>利润额{{ formobj.subsidyPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.subsidyRemarks }}</span></el-form-item>
</el-col>
@ -177,10 +203,19 @@
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.rescueCost = getNumber(formobj.rescueCost, 2)" v-model="formobj.rescueCost" clearable placeholder="" />
<span>利润额{{ formobj.rescuePrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.rescueRemarks }}</span></el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="4">
<el-form-item>
<div style="display: flex;flex-direction: column;justify-content:flex-start;align-items: flex-start;">
<el-button type="text" v-for="(item, index) in formobj.fileName" :key="index" @click="handleOpen(item.url)">{{ item.name }}</el-button>
@ -257,12 +292,18 @@ export default {
aitemVos: [],
outAmount: '',
outKPAmount: '',
outCost: '',
outPrint: '',
outRemarks: '',
subsidyAmount: '',
subsidyKPAmount: '',
subsidyCost: '',
subsidyPrint: '',
subsidyRemarks: '',
rescueAmount: '',
rescueKPAmount: '',
rescueCost: '',
rescuePrint: '',
rescueRemarks: '',
fileName: [],
taskId: '',
@ -272,8 +313,26 @@ export default {
}
},
methods: {
getNumber(val, limit) {
val = val.replace(/[^0-9.]/g, '') //
val = val.replace(/^00/, '0.') // 0
val = val.replace(/^\./g, '0.') // 0.
val = val.replace(/\.{2,}/g, '.') //
val = val.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.'); //
/^0\d+/.test(val) ? val = val.slice(1) : '' // 0
const str = '^(\\d+)\\.(\\d{' + limit + '}).*$'
const reg = new RegExp(str)
if (limit === 0) {
//
val = val.replace(reg, '$1')
} else {
//
val = val.replace(reg, '$1.$2')
}
return val
},
showEdit(row) {
this.viewTitle = '【编辑】结算申请'
this.viewTitle = '结算'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
@ -286,23 +345,6 @@ export default {
handleOpen(value) {
window.open(value, '_blank')
},
saveOrUpdate() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {
this.submitdisabled = true
req.saveOrUpdate(this.formobj).then((res) => {
if (res.success) {
this.$message({ showClose: true, type: 'success', message: '保存成功' })
this.handleReturn('true')
} else {
this.submitdisabled = false
}
}).catch(() => {
this.submitdisabled = false
})
}
})
},
submit() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {
@ -361,17 +403,25 @@ export default {
aitemVos: [],
outAmount: '',
outKPAmount: '',
outCost: '',
outPrint: '',
outRemarks: '',
subsidyAmount: '',
subsidyKPAmount: '',
subsidyCost: '',
subsidyPrint: '',
subsidyRemarks: '',
rescueAmount: '',
rescueKPAmount: '',
rescueCost: '',
rescuePrint: '',
rescueRemarks: '',
fileName: [],
taskId: '',
instanceId: ''
}
this.submitdisabled = false
this.$refs['form_obj'].resetFields()
this.$emit('doback')
}
}

86
yxt-as-ui/src/views/operation/settleAccounts/settleAccountsInfo.vue

@ -44,7 +44,7 @@
<el-form-item><span class="addinputInfo">{{ formobj.waitorName }}</span></el-form-item>
</el-col>
</el-row>
<el-row v-if="formobj.billType !== ''">
<el-row>
<el-col :span="8">
<div class="span-sty">维修单类型</div>
<el-form-item><span class="addinputInfo">{{ formobj.billType }}</span></el-form-item>
@ -72,7 +72,7 @@
<el-form-item><span class="addinputInfo">{{ formobj.vehMark }}/{{ formobj.vinNo }}</span></el-form-item>
</el-col>
</el-row>
<el-row v-if="formobj.billType !== ''">
<el-row>
<el-col :span="8">
<div class="span-sty">是否开票</div>
<el-form-item><span class="addinputInfo">{{ formobj.isInvoicing == '1' ? '是' : formobj.isInvoicing == '0' ? '否' : '' }}</span></el-form-item>
@ -108,29 +108,38 @@
<el-form-item><span class="addinputInfo">{{ formobj.profit }}</span></el-form-item>
</el-col>
</el-row>
<div v-if="formobj.sitemVos.length > 0">
<div class="title">维修项目</div>
<el-table :key="serviceKey" :data="formobj.sitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="200" />
<el-table-column prop="sitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
</div>
<div class="title">维修项目</div>
<el-table :key="serviceKey" :data="formobj.sitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="200" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="150" />
<el-table-column prop="hours" label="工时数" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="sitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="200" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">商品</div>
<el-table :key="tableKey" :data="formobj.goodsDetailsVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center" />
<el-table-column prop="goodsID" label="商品ID" align="center" width="200" />
<el-table-column prop="goodsSpuName" label="商品名称" width="100" align="center" />
<el-table-column prop="goodsSkuCode" label="图号" width="100" align="center" />
<el-table-column prop="count" label="数量" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="goodsReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="goodsSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column prop="partsSellers" label="配件销售人" align="center" min-width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">附加项目</div>
@ -144,7 +153,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.outCost }}</span>
<span>利润额{{ formobj.outPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.outRemarks }}</span></el-form-item>
</el-col>
@ -159,7 +177,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.subsidyCost }}</span>
<span>利润额{{ formobj.subsidyPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.subsidyRemarks }}</span></el-form-item>
</el-col>
@ -175,10 +202,19 @@
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.rescueCost }}</span>
<span>利润额{{ formobj.rescuePrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.rescueRemarks }}</span></el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="4">
<el-form-item>
<div style="display: flex;flex-direction: column;justify-content:flex-start;align-items: flex-start;">
<el-button type="text" v-for="(item, index) in formobj.fileName" :key="index" @click="handleOpen(item.url)">{{ item.name }}</el-button>
@ -255,12 +291,18 @@ export default {
aitemVos: [],
outAmount: '',
outKPAmount: '',
outCost: '',
outPrint: '',
outRemarks: '',
subsidyAmount: '',
subsidyKPAmount: '',
subsidyCost: '',
subsidyPrint: '',
subsidyRemarks: '',
rescueAmount: '',
rescueKPAmount: '',
rescueCost: '',
rescuePrint: '',
rescueRemarks: '',
fileName: [],
taskId: '',
@ -271,7 +313,7 @@ export default {
},
methods: {
showInfo(row) {
this.viewTitle = '结算申请详情'
this.viewTitle = '维修单结算申请详情'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
@ -324,12 +366,18 @@ export default {
aitemVos: [],
outAmount: '',
outKPAmount: '',
outCost: '',
outPrint: '',
outRemarks: '',
subsidyAmount: '',
subsidyKPAmount: '',
subsidyCost: '',
subsidyPrint: '',
subsidyRemarks: '',
rescueAmount: '',
rescueKPAmount: '',
rescueCost: '',
rescuePrint: '',
rescueRemarks: '',
fileName: [],
taskId: '',

47
yxt-as-ui/src/views/operation/workorderinvoicing/relation/chooseRepairbill.vue

@ -2,7 +2,7 @@
<div class="app-container">
<div>
<div class="tab-header webtop">
<div>选择维修</div>
<div>选择维修单</div>
<div>
<el-button type="primary" size="small" @click="AddUpdateReturn">确定</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
@ -12,8 +12,11 @@
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">
<el-form-item label="工单编号" class="searchlist">
<el-form ref="listQueryform" :inline="true" :model="listQuery" class="tab-header">
<el-form-item label="维修单类型" class="searchlist">
<el-input v-model="listQuery.params.billType" placeholder="" clearable/>
</el-form-item>
<el-form-item label="维修单编号" class="searchlist">
<el-input v-model="listQuery.params.billNo" placeholder="" clearable/>
</el-form-item>
<el-form-item label="客户名称" class="searchlist">
@ -22,10 +25,13 @@
<el-form-item label="车牌号" class="searchlist">
<el-input v-model="listQuery.params.vehMark" placeholder="" clearable />
</el-form-item>
<el-form-item label="进厂日期">
<el-date-picker v-model="listQuery.params.entryTimeStart" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-form-item label="车架号" class="searchlist">
<el-input v-model="listQuery.params.vinNo" placeholder="" clearable />
</el-form-item>
<el-form-item label="结算日期">
<el-date-picker v-model="listQuery.params.settleTimeStart" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.entryTimeEnd" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="listQuery.params.settleTimeEnd" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
@ -41,14 +47,19 @@
<el-table :key="tableKey" ref="multipleTable" v-loading="listLoading" :data="list" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column width="50" type="selection" align="center"/>
<el-table-column width="80" label="序号" type="index" :index="indexMethod" align="center"/>
<el-table-column prop="billNo" label="工单编号" align="center" width="170" />
<el-table-column prop="billType" label="工单类型" align="center" width="120" />
<el-table-column prop="isGoOut" label="是否外出" align="center" width="100" />
<el-table-column prop="billType" label="维修单类型" align="center" width="140" />
<el-table-column prop="billNo" label="维修单编号" align="center" width="170" />
<el-table-column prop="customerName" label="客户名称" align="center" min-width="120" />
<el-table-column prop="mobile" label="联系电话" align="center" width="120" />
<el-table-column prop="vinNo" label="车架号" align="center" width="130" />
<el-table-column prop="vehMark" label="车牌号" align="center" width="130" />
<el-table-column prop="entryTime" label="进厂日期" align="center" width="120" />
<el-table-column prop="vinNo" label="车架号" align="center" width="130" />
<el-table-column prop="taxItems" label="加税点项目" align="center" width="130" />
<el-table-column prop="hourAmount" label="工时费" align="center" width="130" />
<el-table-column prop="goodsAmount" label="材料费" align="center" width="130" />
<el-table-column prop="rescueAmount" label="施救费" align="center" width="130" />
<el-table-column prop="outAmount" label="外出费" align="center" width="130" />
<el-table-column prop="otherAmount" label="其它费用" align="center" width="130" />
<el-table-column prop="settleTime" label="结算日期" align="center" width="120" />
<el-table-column prop="totalAmount" label="结算金额合计" align="center" width="150" />
</el-table>
</div>
<div class="pages">
@ -83,11 +94,13 @@ export default {
current: 1,
size: 5,
params: {
billType: '',
billNo: '',
customerName: '',
vehMark: '',
entryTimeStart: '',
entryTimeEnd: '',
vinNo: '',
settleTimeStart: '',
settleTimeEnd: '',
deptSid: ''
},
total: 0
@ -133,11 +146,13 @@ export default {
this.listQuery.current = 1
this.listQuery.size = 5
this.listQuery.total = 0
this.listQuery.params.billType = ''
this.listQuery.params.billNo = ''
this.listQuery.params.customerName = ''
this.listQuery.params.vehMark = ''
this.listQuery.params.entryTimeStart = ''
this.listQuery.params.entryTimeEnd = ''
this.listQuery.params.vinNo = ''
this.listQuery.params.settleTimeStart = ''
this.listQuery.params.settleTimeEnd = ''
this.getList()
},
handleSelectionChange(row) {

60
yxt-as-ui/src/views/operation/workorderinvoicing/workorderinvoicingAdd.vue

@ -4,7 +4,6 @@
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="chooseGd()">选择工单</el-button>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="saveOrUpdate()">保存</el-button>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="submit()">提交</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
@ -26,6 +25,16 @@
<el-form-item><span class="addinputInfo">{{ formobj.createTime }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty"><span class="icon">*</span>开票单位</div>
<el-form-item prop="purchaseSystemName">
<el-select class="addinputInfo" v-model="formobj.purchaseSystemName" placeholder="请选择" @change="changePurchase" filterable clearable>
<el-option v-for="item in purchase_list" :key="item.deptSid" :label="item.purchaseSystemName" :value="item.purchaseSystemName"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>开票名称</div>
@ -58,9 +67,18 @@
</el-form-item>
</el-col>
</el-row>
<div class="title">维修单列表</div>
<div class="title titleOne">
<div>维修单列表</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="chooseGd()">选择工单</el-button>
</div>
<el-table :key="tableKey" :data="formobj.asBwinvoiceapplyDetailList" :index="index" border style="width: 100%">
<el-table-column width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="操作" align="center" width="100">
<template slot-scope="scope">
<el-button type="danger" size="small" @click="handleDelete(scope.$index)">删除</el-button>
</template>
</el-table-column>
<el-table-column prop="billType" label="维修单类型" align="center" width="140" />
<el-table-column prop="sourceBillNo" label="维修单号" align="center" width="170" />
<el-table-column prop="customerName" label="客户名称" align="center" min-width="120" />
<el-table-column prop="vehMark" label="车牌号" align="center" width="150" />
@ -73,6 +91,7 @@
<el-table-column prop="rescueAmount" label="施救费" align="center" width="120" />
<el-table-column prop="outAmount" label="外出费" align="center" width="120" />
<el-table-column prop="otherAmount" label="其它费用" align="center" width="120" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="totalAmount" label="费用合计" align="center" width="120" />
</el-table>
</el-form>
@ -87,7 +106,7 @@
import req from '@/api/operation/workorderinvoicing'
import chooseRepairbill from './relation/chooseRepairbill'
import uploadImg from '@/components/uploadFile/uploadImg'
import { typeValues } from '@/api/Common/dictcommons'
import { typeValues, fetchDetailsByUseOrgSid, getOrgSidByPath } from '@/api/Common/dictcommons'
export default {
name: 'WorkOrderInvoicingAdd',
@ -102,6 +121,7 @@ export default {
submitdisabled: false,
tableKey: 1,
index: 0,
purchase_list: [],
invoiceType_list: [],
formobj: {
sid: '',
@ -123,10 +143,13 @@ export default {
taskId: '',
nodeId: '',
nodeState: '',
purchaseSystemName: '',
purchaseSystemSid: '',
fileList: [],
asBwinvoiceapplyDetailList: []
},
rules: {
purchaseSystemName: [{ required: true, message: '开票单位不能为空', trigger: 'change' }],
invoiceTitle: [{ required: true, message: '开票名称不能为空', trigger: 'blur' }],
invoiceTypeValue: [{ required: true, message: '开票类型不能为空', trigger: 'change' }],
invoiceMoney: [{ required: true, message: '开票金额不能为空', trigger: 'blur' }]
@ -140,6 +163,15 @@ export default {
this.invoiceType_list = res.data
}
})
getOrgSidByPath({ orgPath: window.sessionStorage.getItem('defaultOrgPath') }).then((res) => {
if (res.success) {
fetchDetailsByUseOrgSid(res.data).then((resp) => {
if (resp.success) {
this.purchase_list = resp.data
}
})
}
})
},
getNumber(val, limit) {
val = val.replace(/[^0-9.]/g, '') //
@ -190,6 +222,14 @@ export default {
}
})
},
changePurchase(value) {
const choose = this.purchase_list.filter((item) => item.purchaseSystemName === value)
if (choose.length > 0 && choose !== null) {
this.formobj.purchaseSystemSid = choose[0].deptSid
} else {
this.formobj.purchaseSystemSid = ''
}
},
invoiceTypeChange(value) {
const choose = this.invoiceType_list.filter((item) => item.dictValue === value)
if (choose.length > 0 && choose !== null) {
@ -203,6 +243,9 @@ export default {
const aa = []
this.$refs['divGD'].showData(aa, this.formobj.deptSid)
},
handleDelete(index) {
this.formobj.asBwinvoiceapplyDetailList.splice(index, 1)
},
backData(value) {
this.viewState = 1
if (value.length > 0) {
@ -210,6 +253,8 @@ export default {
this.formobj.asBwinvoiceapplyDetailList.push({
sid: '',
mainSid: '',
billType: e.billType,
billTypeKey: e.billTypeKey,
sourceBillSid: e.sid,
sourceBillNo: e.billNo,
customerSid: e.customerSid,
@ -291,6 +336,8 @@ export default {
taskId: '',
nodeId: '',
nodeState: '',
purchaseSystemName: '',
purchaseSystemSid: '',
fileList: [],
asBwinvoiceapplyDetailList: []
}
@ -311,4 +358,11 @@ export default {
/deep/ .el-form-item__error {
margin-left: 120px !important;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
</style>

14
yxt-as-ui/src/views/operation/workorderinvoicing/workorderinvoicingInfo.vue

@ -23,6 +23,12 @@
<el-form-item><span class="addinputInfo">{{ formobj.createTime }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">开票单位</div>
<el-form-item><span class="addinputInfo">{{ formobj.purchaseSystemName }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">开票名称</div>
@ -52,18 +58,20 @@
<div class="title">维修单列表</div>
<el-table :key="tableKey" :data="formobj.asBwinvoiceapplyDetailList" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="billType" label="维修单类型" align="center" width="140" />
<el-table-column prop="sourceBillNo" label="维修单号" align="center" width="170" />
<el-table-column prop="customerName" label="客户名称" align="center" min-width="120" />
<el-table-column prop="vehMark" label="车牌号" align="center" width="150" />
<el-table-column prop="vinNo" label="车架号" align="center" width="150" />
<el-table-column prop="settleTime" label="结算日期" align="center" width="120" />
<el-table-column prop="taxItems" label="加税点项目" align="center" min-width="140" />
<el-table-column prop="vinNo" label="车架号" align="center" width="150" />
<el-table-column prop="hourAmount" label="工时费" align="center" width="120" />
<el-table-column prop="goodsAmount" label="材料费" align="center" width="120" />
<el-table-column prop="outAmount" label="材料费" align="center" width="120" />
<el-table-column prop="rescueAmount" label="施救费" align="center" width="120" />
<el-table-column prop="outAmount" label="外出费" align="center" width="120" />
<el-table-column prop="otherAmount" label="其它费用" align="center" width="120" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="totalAmount" label="费用合计" align="center" width="120" />
</el-table>
</el-form>
@ -103,6 +111,8 @@ export default {
taskId: '',
nodeId: '',
nodeState: '',
purchaseSystemName: '',
purchaseSystemSid: '',
fileList: [],
asBwinvoiceapplyDetailList: []
},
@ -150,6 +160,8 @@ export default {
taskId: '',
nodeId: '',
nodeState: '',
purchaseSystemName: '',
purchaseSystemSid: '',
fileList: [],
asBwinvoiceapplyDetailList: []
}

10
yxt-as-ui/src/views/operation/workorderreturnvisit/workorderreturnvisit.vue

@ -156,6 +156,7 @@ export default {
tableKey: 0,
list: [],
sids: [], // SIDs
multipleSelection: [],
state_list: [
{
dictKey: '0',
@ -240,6 +241,7 @@ export default {
},
// sid
handleSelectionChange(row) {
this.multipleSelection = row
const aa = []
row.forEach(element => {
aa.push(element.sid)
@ -307,8 +309,12 @@ export default {
},
toEdit() {
if (this.sids.length === 1) {
this.viewState = 3
this.$refs['divAdd'].showEdit(this.sids[0])
if (this.multipleSelection[0].state !== '已完成') {
this.viewState = 3
this.$refs['divAdd'].showEdit(this.sids[0])
} else {
this.$message({ showClose: true, type: 'error', message: '该回访单已完成' })
}
} else {
this.$message({ showClose: true, type: 'error', message: '请选择一条记录进行操作' })
}

4
yxt-as-ui/src/views/operation/workslrsettlement/workslrsettlement.vue

@ -31,7 +31,7 @@
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.closeDateEnd" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
<el-form-item label="维修单号">
<el-form-item label="维修单号">
<el-input v-model="listQuery.params.sourceBillNo" placeholder="" clearable/>
</el-form-item>
<el-form-item label="维修单类型">
@ -87,7 +87,7 @@
<el-table-column prop="createByName" label="申请人" align="center" width="120" />
<el-table-column prop="applyDate" label="申请日期" align="center" width="120" />
<el-table-column prop="closeDate" label="办结日期" align="center" width="120" />
<el-table-column prop="sourceBillNo" label="维修单号" align="center" width="190" />
<el-table-column prop="sourceBillNo" label="维修单号" align="center" width="190" />
<el-table-column prop="billType" label="维修单类型" align="center" width="130" />
<el-table-column prop="subject" label="科目" align="center" width="100" />
<el-table-column prop="customerName" label="客户名称" align="center" width="160" />

108
yxt-as-ui/src/views/operation/workslrsettlement/workslrsettlementAdd.vue

@ -91,29 +91,33 @@
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="200" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="repairerName" label="维修人" align="center" width="200" />
<el-table-column prop="examineHourPrice" label="工时提成" align="center" width="100" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="150" />
<el-table-column prop="hours" label="工时数" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="sitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="amount" label="金额" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="200" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">商品</div>
<el-table :key="tableKey" :data="formobj.goodsDetailsVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center" />
<el-table-column prop="goodsID" label="商品ID" align="center" width="200" />
<el-table-column prop="goodsSpuName" label="商品名称" width="100" align="center" />
<el-table-column prop="goodsSkuCode" label="图号" width="100" align="center" />
<el-table-column prop="goodsSkuOwnSpec" label="规格" width="100" align="center" />
<el-table-column prop="unit" label="单位" width="100" align="center" />
<el-table-column prop="warehouseName" label="仓库" width="100" align="center" />
<el-table-column prop="count" label="数量" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="count" label="数量" width="100" align="center" />
<el-table-column prop="goodsReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" width="100" align="center" />
<el-table-column prop="amount" label="金额" width="100" align="center" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="goodsSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column prop="partsSellers" label="配件销售人" align="center" min-width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">附加项目</div>
@ -127,7 +131,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.outCost = getNumber(formobj.outCost, 2)" v-model="formobj.outCost" clearable placeholder="" />
<span>利润额{{ formobj.outPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.outRemarks }}</span></el-form-item>
</el-col>
@ -142,7 +155,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.subsidyCost = getNumber(formobj.subsidyCost, 2)" v-model="formobj.subsidyCost" clearable placeholder="" />
<span>利润额{{ formobj.subsidyPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.subsidyRemarks }}</span></el-form-item>
</el-col>
@ -158,10 +180,19 @@
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.rescueCost = getNumber(formobj.rescueCost, 2)" v-model="formobj.rescueCost" clearable placeholder="" />
<span>利润额{{ formobj.rescuePrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.rescueRemarks }}</span></el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="4">
<el-form-item>
<div style="display: flex;flex-direction: column;justify-content:flex-start;align-items: flex-start;">
<el-button type="text" v-for="(item, index) in formobj.fileName" :key="index" @click="handleOpen(item.url)">{{ item.name }}</el-button>
@ -172,7 +203,9 @@
<el-table :key="subjoinKey" :data="formobj.aitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="aitemName" label="其它附加项目" align="center" width="200" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="aitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="aitemCost" label="成本" align="center" width="150" />
<el-table-column prop="aitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</el-form>
@ -237,12 +270,18 @@ export default {
actualAmount: '',
outAmount: '',
outKPAmount: '',
outCost: '',
outPrint: '',
outRemarks: '',
subsidyAmount: '',
subsidyKPAmount: '',
subsidyCost: '',
subsidyPrint: '',
subsidyRemarks: '',
rescueAmount: '',
rescueKPAmount: '',
rescueCost: '',
rescuePrint: '',
rescueRemarks: '',
fileName: []
},
@ -250,8 +289,26 @@ export default {
}
},
methods: {
getNumber(val, limit) {
val = val.replace(/[^0-9.]/g, '') //
val = val.replace(/^00/, '0.') // 0
val = val.replace(/^\./g, '0.') // 0.
val = val.replace(/\.{2,}/g, '.') //
val = val.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.'); //
/^0\d+/.test(val) ? val = val.slice(1) : '' // 0
const str = '^(\\d+)\\.(\\d{' + limit + '}).*$'
const reg = new RegExp(str)
if (limit === 0) {
//
val = val.replace(reg, '$1')
} else {
//
val = val.replace(reg, '$1.$2')
}
return val
},
showAdd(sid) {
this.viewTitle = '【新增】反结算申请'
this.viewTitle = '【新增】维修单反结算申请'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
@ -269,7 +326,7 @@ export default {
})
},
showEdit(row) {
this.viewTitle = '【编辑】反结算申请'
this.viewTitle = '【编辑】维修单反结算申请'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
@ -279,6 +336,9 @@ export default {
}
})
},
handleOpen(value) {
window.open(value, '_blank')
},
saveOrUpdate() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {
@ -351,7 +411,23 @@ export default {
goodsAmount: '',
addAmount: '',
discountAmount: '',
actualAmount: ''
actualAmount: '',
outAmount: '',
outKPAmount: '',
outCost: '',
outPrint: '',
outRemarks: '',
subsidyAmount: '',
subsidyKPAmount: '',
subsidyCost: '',
subsidyPrint: '',
subsidyRemarks: '',
rescueAmount: '',
rescueKPAmount: '',
rescueCost: '',
rescuePrint: '',
rescueRemarks: '',
fileName: []
}
this.$emit('doback')
}

88
yxt-as-ui/src/views/operation/workslrsettlement/workslrsettlementInfo.vue

@ -89,29 +89,33 @@
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="200" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="repairerName" label="维修人" align="center" width="200" />
<el-table-column prop="examineHourPrice" label="工时提成" align="center" width="100" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="150" />
<el-table-column prop="hours" label="工时数" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="sitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="amount" label="金额" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="200" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">商品</div>
<el-table :key="tableKey" :data="formobj.goodsDetailsVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center" />
<el-table-column prop="goodsID" label="商品ID" align="center" width="200" />
<el-table-column prop="goodsSpuName" label="商品名称" width="100" align="center" />
<el-table-column prop="goodsSkuCode" label="图号" width="100" align="center" />
<el-table-column prop="goodsSkuOwnSpec" label="规格" width="100" align="center" />
<el-table-column prop="unit" label="单位" width="100" align="center" />
<el-table-column prop="warehouseName" label="仓库" width="100" align="center" />
<el-table-column prop="count" label="数量" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="count" label="数量" width="100" align="center" />
<el-table-column prop="goodsReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" width="100" align="center" />
<el-table-column prop="amount" label="金额" width="100" align="center" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="goodsSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column prop="partsSellers" label="配件销售人" align="center" min-width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">附加项目</div>
@ -125,7 +129,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.outCost }}</span>
<span>利润额{{ formobj.outPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.outRemarks }}</span></el-form-item>
</el-col>
@ -140,7 +153,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.subsidyCost }}</span>
<span>利润额{{ formobj.subsidyPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.subsidyRemarks }}</span></el-form-item>
</el-col>
@ -156,10 +178,19 @@
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.rescueCost }}</span>
<span>利润额{{ formobj.rescuePrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.rescueRemarks }}</span></el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="4">
<el-form-item>
<div style="display: flex;flex-direction: column;justify-content:flex-start;align-items: flex-start;">
<el-button type="text" v-for="(item, index) in formobj.fileName" :key="index" @click="handleOpen(item.url)">{{ item.name }}</el-button>
@ -170,7 +201,9 @@
<el-table :key="subjoinKey" :data="formobj.aitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="aitemName" label="其它附加项目" align="center" width="200" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="aitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="aitemCost" label="成本" align="center" width="150" />
<el-table-column prop="aitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</el-form>
@ -235,12 +268,18 @@ export default {
actualAmount: '',
outAmount: '',
outKPAmount: '',
outCost: '',
outPrint: '',
outRemarks: '',
subsidyAmount: '',
subsidyKPAmount: '',
subsidyCost: '',
subsidyPrint: '',
subsidyRemarks: '',
rescueAmount: '',
rescueKPAmount: '',
rescueCost: '',
rescuePrint: '',
rescueRemarks: '',
fileName: []
},
@ -249,7 +288,7 @@ export default {
},
methods: {
showInfo(row) {
this.viewTitle = '反结算申请详情'
this.viewTitle = '维修单反结算申请详情'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
@ -266,6 +305,9 @@ export default {
}
})
},
handleOpen(value) {
window.open(value, '_blank')
},
handleReturn() {
this.formobj = {
sid: '',
@ -304,7 +346,23 @@ export default {
goodsAmount: '',
addAmount: '',
discountAmount: '',
actualAmount: ''
actualAmount: '',
outAmount: '',
outKPAmount: '',
outCost: '',
outPrint: '',
outRemarks: '',
subsidyAmount: '',
subsidyKPAmount: '',
subsidyCost: '',
subsidyPrint: '',
subsidyRemarks: '',
rescueAmount: '',
rescueKPAmount: '',
rescueCost: '',
rescuePrint: '',
rescueRemarks: '',
fileName: []
}
this.$emit('doback')
}

15
yxt-as-ui/src/views/storage/adjustment/index.vue

@ -60,15 +60,15 @@
<el-button type="primary" size="mini" @click="toInfo(scope.row)">查看</el-button>
</template>
</el-table-column>
<!-- <el-table-column label="流程状态" width="180" header-align="center">
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column> -->
<el-table-column prop="nodeState" label="流程状态" align="center" />
<el-table-column prop="billNo" label="单据编号" align="center" />
<el-table-column prop="useOrgName" label="分公司" align="center" />
</el-table-column>
<!-- <el-table-column prop="nodeState" label="流程状态" align="center" /> -->
<el-table-column prop="billNo" label="单据编号" align="center" />
<el-table-column prop="useOrgName" label="分公司" align="center" />
<el-table-column prop="deptName" label="申请部门" align="center" />
<el-table-column prop="createTime" label="申请日期" align="center" />
<el-table-column prop="finishTime" label="办结日期" align="center" />
@ -85,8 +85,7 @@
</div>
</div>
<!--新增及修改 -->
<adjustmentAdd v-show="viewState == 2 || viewState == 3" ref="divAdd" @doback="resetState"
@reloadlist="getList" />
<adjustmentAdd v-show="viewState == 2 || viewState == 3" ref="divAdd" @doback="resetState" @reloadlist="getList" />
<!-- 详情 -->
<adjustmentInfo v-show="viewState == 4" ref="divInfo" @doback="resetState" />
<!-- 流程审批记录 -->
@ -302,7 +301,7 @@
}
this.init()
},
toAdd(){
toAdd() {
this.viewState = 3
this.$refs['divAdd'].showAdd()
},

387
yxt-as-ui/src/views/storage/inventory/inventoryRefer.vue

@ -2,7 +2,7 @@
<div class="app-container">
<!--列表页面-->
<div v-show="viewState == 1">
<button-bar view-title="出入库查询" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle"/>
<button-bar view-title="出入库查询" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<!--Start查询列表部分-->
<div class="main-content">
<div class="searchcon">
@ -10,42 +10,44 @@
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">
<el-form-item label="商品ID">
<el-input v-model="listQuery.params.goodsID" placeholder="" clearable/>
<el-input v-model="listQuery.params.goodsID" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品名称">
<el-input v-model="listQuery.params.goodsSpuName" placeholder="" clearable/>
<el-input v-model="listQuery.params.goodsSpuName" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品编码">
<el-input v-model="listQuery.params.goodsSkuCode" placeholder="" clearable/>
<el-form-item label="图号">
<el-input v-model="listQuery.params.goodsSkuCode" placeholder="" clearable />
</el-form-item>
<el-form-item label="仓库">
<el-input v-model="listQuery.params.warehouseName" placeholder="" clearable/>
<el-input v-model="listQuery.params.warehouseName" placeholder="" clearable />
</el-form-item>
<el-form-item label="库位">
<el-input v-model="listQuery.params.warehouseRackCode" placeholder="" clearable/>
<el-input v-model="listQuery.params.warehouseRackCode" placeholder="" clearable />
</el-form-item>
<el-form-item label="供应商">
<el-input v-model="listQuery.params.supplierName" placeholder="" clearable/>
<el-input v-model="listQuery.params.supplierName" placeholder="" clearable />
</el-form-item>
<el-form-item label="来源单号">
<el-input v-model="listQuery.params.billNo" placeholder="" clearable/>
<el-input v-model="listQuery.params.billNo" placeholder="" clearable />
</el-form-item>
<el-form-item label="单据类型">
<el-input v-model="listQuery.params.billType" placeholder="" clearable/>
<el-input v-model="listQuery.params.billType" placeholder="" clearable />
</el-form-item>
<el-form-item label="业务类型">
<el-input v-model="listQuery.params.busTypeValue" placeholder="" clearable/>
<el-input v-model="listQuery.params.busTypeValue" placeholder="" clearable />
</el-form-item>
<el-form-item label="发生时间">
<el-date-picker v-model="listQuery.params.createTimeStart" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="listQuery.params.createTimeStart" value-format="yyyy-MM-dd" format="yyyy-MM-dd"
type="date" placeholder="选择日期"></el-date-picker>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.createTimeEnd" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="listQuery.params.createTimeEnd" value-format="yyyy-MM-dd" format="yyyy-MM-dd"
type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
<el-form-item label="操作人">
<el-input v-model="listQuery.params.createByName" placeholder="" clearable/>
<el-input v-model="listQuery.params.createByName" placeholder="" clearable />
</el-form-item>
<el-form-item label="经办人">
<el-input v-model="listQuery.params.handlerName" placeholder="" clearable/>
<el-input v-model="listQuery.params.handlerName" placeholder="" clearable />
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
@ -57,12 +59,13 @@
<!--End查询列表部分-->
<div class="listtop">
<div class="tit">商品出入库列表</div>
<pageye v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
<pageye v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current"
:limit.sync="listQuery.size" class="pagination" @pagination="getList" />
</div>
<!--Start 主页面主要部分 -->
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" :border="true" style="width: 100%;">
<el-table-column label="序号" type="index" width="80" :index="indexMethod" align="center"/>
<el-table-column label="序号" type="index" width="80" :index="indexMethod" align="center" />
<el-table-column prop="goodsID" label="商品ID" align="center" width="150" />
<el-table-column prop="goodsSpuName" label="商品名称" align="center" width="180" />
<el-table-column prop="goodsSkuCode" label="图号" align="center" width="120" />
@ -92,9 +95,10 @@
</div>
<!--End 主页面主要部分-->
<div class="pages">
<div class="tit"/>
<div class="tit" />
<!-- 翻页 -->
<pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
<pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current"
:limit.sync="listQuery.size" class="pagination" @pagination="getList" />
</div>
<!--End查询列表部分-->
</div>
@ -103,191 +107,190 @@
</template>
<script>
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import ButtonBar from '@/components/ButtonBar'
import req from '@/api/storage/inventory'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import ButtonBar from '@/components/ButtonBar'
import req from '@/api/storage/inventory'
export default {
name: 'InventoryRefer',
components: {
Pagination,
pageye,
ButtonBar
},
data() {
return {
btndisabled: false,
btnList: [
{
type: 'primary',
size: 'small',
icon: 'export',
btnKey: 'doExport',
btnLabel: '导出'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
isSearchShow: false,
searchxianshitit: '显示查询条件',
viewState: 1, // 1 2 3 4
tableKey: 0,
list: [],
sids: [], // SIDs
FormLoading: false,
listLoading: false,
//
listQuery: {
current: 1,
size: 5,
total: 0,
params: {
goodsID: '',
billNo: '',
billType: '',
busTypeValue: '',
billObjName: '',
batchNumber: '',
goodsSpuName: '',
goodsSkuCode: '',
warehouseName: '',
warehouseRackCode: '',
createTimeStart: '',
createTimeEnd: '',
supplierName: '',
createByName: '',
handlerName: '',
userSid: '',
orgPath: '',
menuUrl: ''
export default {
name: 'InventoryRefer',
components: {
Pagination,
pageye,
ButtonBar
},
data() {
return {
btndisabled: false,
btnList: [{
type: 'primary',
size: 'small',
icon: 'export',
btnKey: 'doExport',
btnLabel: '导出'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
isSearchShow: false,
searchxianshitit: '显示查询条件',
viewState: 1, // 1 2 3 4
tableKey: 0,
list: [],
sids: [], // SIDs
FormLoading: false,
listLoading: false,
//
listQuery: {
current: 1,
size: 5,
total: 0,
params: {
goodsID: '',
billNo: '',
billType: '',
busTypeValue: '',
billObjName: '',
batchNumber: '',
goodsSpuName: '',
goodsSkuCode: '',
warehouseName: '',
warehouseRackCode: '',
createTimeStart: '',
createTimeEnd: '',
supplierName: '',
createByName: '',
handlerName: '',
userSid: '',
orgPath: '',
menuUrl: ''
}
}
}
}
},
created() {
//
this.getList()
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
btnHandle(btnKey) {
console.log('XXXXXXXXXXXXXXX ' + btnKey)
switch (btnKey) {
case 'doExport':
this.doExport()
break
case 'doClose':
this.doClose()
break
default:
break
}
created() {
//
this.getList()
},
//
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
//
getList() {
this.listLoading = true
this.listQuery.params.userSid = window.sessionStorage.getItem('userSid')
this.listQuery.params.orgPath = window.sessionStorage.getItem('defaultOrgPath')
this.listQuery.params.menuUrl = this.$route.path
req.pageList(this.listQuery).then((response) => {
this.listLoading = false
if (response.success) {
this.list = response.data.records
this.listQuery.total = response.data.total
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.list = []
this.listQuery.total = 0
this.searchxianshitit = '显示查询条件'
}
})
},
//
handleFilter() {
this.listQuery.current = 1
this.getList()
},
//
handleReset() {
this.listQuery = {
current: 1,
size: 5,
total: 0,
params: {
goodsID: '',
billNo: '',
billType: '',
busTypeValue: '',
billObjName: '',
batchNumber: '',
goodsSpuName: '',
goodsSkuCode: '',
warehouseName: '',
warehouseRackCode: '',
createTimeStart: '',
createTimeEnd: '',
supplierName: '',
createByName: '',
handlerName: '',
userSid: '',
orgPath: '',
menuUrl: ''
},
btnHandle(btnKey) {
console.log('XXXXXXXXXXXXXXX ' + btnKey)
switch (btnKey) {
case 'doExport':
this.doExport()
break
case 'doClose':
this.doClose()
break
default:
break
}
}
this.getList()
},
doExport() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.exportExcel(this.listQuery.params).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.ms-excel'
},
//
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
//
getList() {
this.listLoading = true
this.listQuery.params.userSid = window.sessionStorage.getItem('userSid')
this.listQuery.params.orgPath = window.sessionStorage.getItem('defaultOrgPath')
this.listQuery.params.menuUrl = this.$route.path
req.pageList(this.listQuery).then((response) => {
this.listLoading = false
if (response.success) {
this.list = response.data.records
this.listQuery.total = response.data.total
} else {
this.list = []
this.listQuery.total = 0
}
})
const fileName = '出入库记录' + '.xls'
const elink = document.createElement('a')
elink.download = fileName
elink.style.display = 'nonde'
elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink)
elink.click()
URL.revokeObjectURL(elink.href)
document.body.removeChild(elink)
}).catch(() => {
loading.close()
})
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
},
//
handleFilter() {
this.listQuery.current = 1
this.getList()
},
//
handleReset() {
this.listQuery = {
current: 1,
size: 5,
total: 0,
params: {
goodsID: '',
billNo: '',
billType: '',
busTypeValue: '',
billObjName: '',
batchNumber: '',
goodsSpuName: '',
goodsSkuCode: '',
warehouseName: '',
warehouseRackCode: '',
createTimeStart: '',
createTimeEnd: '',
supplierName: '',
createByName: '',
handlerName: '',
userSid: '',
orgPath: '',
menuUrl: ''
}
}
this.getList()
},
doExport() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.exportExcel(this.listQuery.params).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.ms-excel'
})
const fileName = '出入库记录' + '.xls'
const elink = document.createElement('a')
elink.download = fileName
elink.style.display = 'nonde'
elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink)
elink.click()
URL.revokeObjectURL(elink.href)
document.body.removeChild(elink)
}).catch(() => {
loading.close()
})
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
}
}
}
}
</script>
<style scoped>
</style>

50
yxt-as-ui/src/views/storage/oldPartsCope/index.vue

@ -75,7 +75,12 @@
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="billNo" label="单据编号 " width="180" align="center" />
<el-table-column prop="useOrgName" label="分公司" align="center" />
<el-table-column prop="deptName" label="申请部门" align="center" />
@ -101,6 +106,13 @@
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
<divInfo v-show="viewState == 4" ref="divinfo" @doback="resetState" @reloadlist="loadList" />
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -111,6 +123,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './oldPartsCopeAdd.vue'
import divInfo from './oldPartsCopeInfo.vue'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
ButtonBar,
@ -121,6 +136,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
@ -194,12 +212,42 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
selectionLineChangeHandle(val) {
console.log("val", val);

48
yxt-as-ui/src/views/storage/oldPartsFactory/index.vue

@ -69,7 +69,12 @@
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" width="120" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="billNo" label="单据编号" width="180" align="center" />
<el-table-column prop="useOrgName" label="分公司" width="120" align="center" />
<el-table-column prop="deptName" label="申请部门" width="120" align="center" />
@ -176,6 +181,11 @@
</el-form>
</el-dialog>
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -188,6 +198,9 @@
import divAdd from './oldPartsFactoryAdd.vue'
import divInfo from './oldPartsFactoryInfo.vue'
import manufacturerconfirmInfo from './manufacturerconfirmInfo.vue'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
ButtonBar,
@ -199,6 +212,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
dialogVisible: false,
dialogVisible2: false,
fileList: [],
@ -266,12 +282,42 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
handleClose() {
this.dialogVisible = false
},

48
yxt-as-ui/src/views/storage/oldpPartStocktaking/index.vue

@ -60,7 +60,12 @@
@click="toReport(scope.row)">盘库报告</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" width="120" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="deptName" label="部门" width="120" align="center" />
<el-table-column prop="billNo" label="盘点编号" width="120" align="center" />
<el-table-column prop="createTime" label="生成日期" width="120" align="center" />
@ -237,6 +242,11 @@
</el-dialog>
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -260,6 +270,9 @@
import {
selAllByOrgSidPath
} from '@/api/Common/dictcommons'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
@ -274,6 +287,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
showList: '2',
dialogVisible: false,
dialogVisible2: false,
@ -400,6 +416,8 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
@ -427,6 +445,34 @@
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
getWarehouseArea(sid) {
this.dialogParams.params.warehouseAreaSid = ''
this.dialogParams.params.warehouseAreaName = ''

49
yxt-as-ui/src/views/storage/oldpPartStocktakingLoss/index.vue

@ -61,7 +61,12 @@
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="billNo" label="单据编号" align="center" />
<el-table-column prop="deptName" label="申请部门" align="center" />
<el-table-column prop="createByName" label="申请人" align="center" />
@ -86,6 +91,12 @@
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
<divInfo v-show="viewState == 4" ref="divinfo" @doback="resetState" @reloadlist="loadList" />
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -96,6 +107,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './oldpPartStocktakingLossAdd.vue'
import divInfo from './oldpPartStocktakingLossInfo.vue'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
ButtonBar,
@ -106,6 +120,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
@ -158,12 +175,42 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
toPrintLabel() {
if (this.selectionList.length != 1) {
this.$message({

49
yxt-as-ui/src/views/storage/oldpPartStocktakingSurplus/index.vue

@ -61,7 +61,12 @@
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="billNo" label="单据编号" align="center" />
<el-table-column prop="deptName" label="申请部门" align="center" />
<el-table-column prop="createByName" label="申请人" align="center" />
@ -86,6 +91,12 @@
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
<divInfo v-show="viewState == 4" ref="divinfo" @doback="resetState" @reloadlist="loadList" />
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -96,6 +107,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './oldpPartStocktakingSurplusAdd.vue'
import divInfo from './oldpPartStocktakingSurplusInfo.vue'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
ButtonBar,
@ -106,6 +120,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
@ -158,12 +175,42 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
toPrintLabel() {
if (this.selectionList.length != 1) {
this.$message({

48
yxt-as-ui/src/views/storage/stocktaking/index.vue

@ -60,7 +60,12 @@
@click="toReport(scope.row)">盘库报告</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" width="120" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="deptName" label="部门" width="120" align="center" />
<el-table-column prop="billNo" label="盘点编号" width="120" align="center" />
<el-table-column prop="createTime" label="生成日期" width="120" align="center" />
@ -237,6 +242,11 @@
</el-dialog>
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -260,6 +270,9 @@
import {
selAllByOrgSidPath
} from '@/api/Common/dictcommons'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
@ -274,6 +287,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
showList: '2',
dialogVisible: false,
dialogVisible2: false,
@ -400,6 +416,8 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
@ -421,6 +439,34 @@
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
getWarehouseArea(sid) {
this.dialogParams.params.warehouseAreaSid = ''
this.dialogParams.params.warehouseAreaName = ''

49
yxt-as-ui/src/views/storage/stocktakingLoss/index.vue

@ -61,7 +61,12 @@
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="billNo" label="单据编号" align="center" />
<el-table-column prop="deptName" label="申请部门" align="center" />
<el-table-column prop="createByName" label="申请人" align="center" />
@ -85,7 +90,11 @@
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
<divInfo v-show="viewState == 4" ref="divinfo" @doback="resetState" @reloadlist="loadList" />
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -96,6 +105,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './stocktakingLossAdd.vue'
import divInfo from './stocktakingLossInfo.vue'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
ButtonBar,
@ -106,6 +118,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
@ -158,12 +173,42 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
toPrintLabel() {
if (this.selectionList.length != 1) {
this.$message({

49
yxt-as-ui/src/views/storage/stocktakingSurplus/index.vue

@ -61,7 +61,12 @@
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column prop="nodeState" label="流程状态" align="center" />
<el-table-column label="流程状态" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column prop="billNo" label="单据编号" align="center" />
<el-table-column prop="deptName" label="申请部门" align="center" />
<el-table-column prop="createByName" label="申请人" align="center" />
@ -85,7 +90,11 @@
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
<divInfo v-show="viewState == 4" ref="divinfo" @doback="resetState" @reloadlist="loadList" />
<!-- 流程审批记录 -->
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no"
:src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -96,6 +105,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './stocktakingSurplusAdd.vue'
import divInfo from './stocktakingSurplusInfo.vue'
import {
getStorage
} from '@/utils/auth'
export default {
components: {
ButtonBar,
@ -106,6 +118,9 @@
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
@ -158,12 +173,42 @@
}
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = '/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
toPrintLabel() {
if (this.selectionList.length != 1) {
this.$message({

153
yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue

@ -19,6 +19,19 @@
<el-row class="first_row">
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 仓库类型</div>
<el-form-item prop="warehouseTypeValue">
<el-select v-model="formobj.warehouseTypeValue" placeholder="请选择仓库类型" class="addinputw addinputInfo"
@change="selectWarehouseTypeChange">
<el-option v-for="item in warehouseTypeList" :key="item.dictKey" :label="item.dictValue"
:value="item.dictKey" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 选择所属仓库</div>
@ -41,6 +54,11 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 选择所属库区</div>
<el-form-item prop="locationName">
@ -51,9 +69,6 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 库位编码</div>
<el-form-item prop="rackCode">
@ -61,7 +76,7 @@
oninput="this.value=this.value.replace(/[^\w_-]/g,'');" />
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item>
<el-input v-model="formobj.remarks" placeholder="备注" class="addinputw addinputInfo" clearable />
@ -113,6 +128,9 @@
import req2 from '@/api/warehouse/warehouse.js'
import req3 from '@/api/warehouse/warehouseArea.js'
import req4 from '@/api/warehouse/warehouseZone.js'
import {
typeValues,
} from '@/api/Common/dictcommons.js'
export default {
components: {},
data() {
@ -129,6 +147,8 @@
locationName: '',
locationSid: '',
remarks: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
@ -137,6 +157,7 @@
warehouseList: [],
warehouseZoneList: [],
warehouseAreaList: [],
warehouseTypeList: [],
rules: {
warehouseName: [{
required: true,
@ -162,7 +183,7 @@
}
},
created() {
this.initData()
},
methods: {
@ -175,20 +196,53 @@
req2.getAllWarehouse(parpams).then(resp => {
this.warehouseList = resp.data
})
},
getWarehouseArea(sid) {
var params = {
qySid: sid
type: "warehouse",
psid: '0'
}
req3.getAllWarehouseareaByZoneSid(params).then(resp => {
console.log('>>>>>>>>>getAllWarehousearea', resp)
this.warehouseAreaList = resp.data
typeValues(params).then(resp => {
console.log('>>>>>>>>>typeValues', resp)
this.warehouseTypeList = resp.data
}).catch(() => {})
},
selectWarehouseTypeChange(val) {
const choose = this.warehouseTypeList.filter((item) => item.dictKey == val)
console.log('>>>>>>>>>selectWarehouseChange', choose)
this.formobj.warehouseTypeKey = choose[0].dictKey
this.formobj.warehouseTypeValue = choose[0].dictValue
this.formobj.warehouseSid = ''
this.formobj.warehouseName = ''
this.formobj.zoneSid = ''
this.formobj.zoneName = ''
this.formobj.locationSid = ''
this.formobj.locationName = ''
this.getWarehouseList(this.formobj.warehouseTypeValue)
},
getWarehouseList(val) {
var parpams = {
useOrgSid: window.sessionStorage.getItem('departmentSid'),
warehouseTypeValue: val
}
req2.selectWarehouseByType(parpams).then(resp => {
this.warehouseList = resp.data
})
},
selectWarehouseChange(val) {
const choose = this.warehouseList.filter((item) => item.sid == val)
console.log('>>>>>>>>>selectWarehouseChange', choose)
@ -220,7 +274,17 @@
this.formobj.locationName = ''
this.getWarehouseArea(choose[0].sid)
},
getWarehouseArea(sid) {
var params = {
qySid: sid
}
req3.getAllWarehouseareaByZoneSid(params).then(resp => {
console.log('>>>>>>>>>getAllWarehousearea', resp)
this.warehouseAreaList = resp.data
}).catch(() => {})
},
selectWarehouseAreaChange(val) {
const choose = this.warehouseAreaList.filter((item) => item.sid == val)
@ -265,7 +329,66 @@
type: 'success',
message: resp.msg
})
this.handleReturn('true')
this.$confirm('是否继续添加仓库区域信息?', '温馨提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
//
var warehouseTypeKey = this.formobj.warehouseTypeKey
var warehouseTypeValue = this.formobj.warehouseTypeValue
var warehouseName = this.formobj.warehouseName
var warehouseSid = this.formobj.warehouseSid
var zoneName = this.formobj.zoneName
var zoneSid = this.formobj.zoneSid
var locationName = this.formobj.locationName
var locationSid = this.formobj.locationSid
this.formobj = {
sid: '',
rackName: '',
rackCode: '',
warehouseName: warehouseName,
warehouseSid: warehouseSid,
zoneName: zoneName,
zoneSid: zoneSid,
locationName: locationName,
locationSid: locationSid,
warehouseTypeKey: warehouseTypeKey,
warehouseTypeValue: warehouseTypeValue,
remarks: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
}).catch(() => {
//
this.formobj = {
sid: '',
rackName: '',
rackCode: '',
warehouseName: '',
warehouseSid: '',
zoneName: '',
zoneSid: '',
locationName: '',
locationSid: '',
remarks: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$emit('doback')
});
} else {
// resp.code
}
@ -288,6 +411,8 @@
locationName: '',
locationSid: '',
remarks: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
@ -296,12 +421,14 @@
this.$emit('doback')
},
showAdd() {
this.initData()
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
showEdit(row) {
this.initData()
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})

54
yxt-as-ui/src/views/warehouse/goodsShelves/index.vue

@ -15,10 +15,10 @@
<el-form-item label="库位编码">
<el-input v-model="queryParams.params.code" placeholder="" clearable />
</el-form-item>
<el-form-item label="所属库">
<el-select v-model="queryParams.params.warehouseName" placeholder="所属仓库" class="addinputw addinputInfo"
@change="selectWarehouseChange">
<el-option v-for="item in warehouseList" :key="item.sid" :label="item.warehouseName"
<el-form-item label="所属库">
<el-select v-model="queryParams.params.warehouseAreaName" placeholder="所属库区"
class="addinputw addinputInfo" @change="selectWrehouseAreaChange">
<el-option v-for="item in warehouseAreaList" :key="item.sid" :label="item.areaName"
:value="item.sid" />
</el-select>
</el-form-item>
@ -28,14 +28,22 @@
:value="item.sid" />
</el-select>
</el-form-item>
<el-form-item label="所属库">
<el-select v-model="queryParams.params.warehouseAreaName" placeholder="所属库区"
class="addinputw addinputInfo" @change="selectWrehouseAreaChange">
<el-option v-for="item in warehouseAreaList" :key="item.sid" :label="item.areaName"
<el-form-item label="所属库">
<el-select v-model="queryParams.params.warehouseName" placeholder="所属仓库" class="addinputw addinputInfo"
@change="selectWarehouseChange">
<el-option v-for="item in warehouseList" :key="item.sid" :label="item.warehouseName"
:value="item.sid" />
</el-select>
</el-form-item>
<el-form-item label="所属仓库类型">
<el-select v-model="queryParams.params.warehouseTypeValue" placeholder="请选择所属仓库类型">
<el-option v-for="item in warehouseTypeList" :key="item.dictValue" :label="item.dictValue"
:value="item.dictValue" />
</el-select>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button>
@ -65,12 +73,15 @@
inactive-value="2" @change="enableChange(scope.row.sid,scope.row.isEnable)" />
</template>
</el-table-column>
<!-- <el-table-column prop="rackName" label="库位名称" align="center" /> -->
<el-table-column prop="warehouseName" label="所属仓库" align="center" />
<el-table-column prop="zoneName" label="所属区域" align="center" />
<el-table-column prop="locationName" label="所属库区" align="center" />
<el-table-column prop="rackCode" label="库位编码" align="center" />
<el-table-column prop="locationName" label="所属库区" align="center" />
<el-table-column prop="zoneName" label="所属区域" align="center" />
<el-table-column prop="warehouseName" label="所属仓库" align="center" />
<el-table-column prop="warehouseTypeValue" label="所属仓库类型" align="center" />
<el-table-column prop="remarks" label="备注" align="center" />
<el-table-column prop="deptName" label="隶属部门 " align="center" />
<el-table-column prop="createOrgName" label="分公司 " align="center" />
</el-table>
</div>
<!-- End 项目列表 -->
@ -97,6 +108,9 @@
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import divAdd from './goodsShelvesAdd.vue'
import {
typeValues,
} from '@/api/Common/dictcommons.js'
export default {
components: {
ButtonBar,
@ -160,7 +174,8 @@
warehouseZoneList: [],
warehouseAreaList: [],
sids: [],
selectionList: []
selectionList: [],
warehouseTypeList: [],
}
},
mounted() {
@ -183,6 +198,18 @@
this.sids = aa
},
getwarehouse() {
var params = {
type: "warehouse",
psid: '0'
}
typeValues(params).then(resp => {
console.log('>>>>>>>>>typeValues', resp)
this.warehouseTypeList = resp.data
}).catch(() => {})
var parpams = {
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
}
@ -392,6 +419,7 @@
},
resetState() {
this.viewState = 1
this.loadList()
},
enableChange(sid, state) {
console.log('sid', sid)

30
yxt-as-ui/src/views/warehouse/warehouse/index.vue

@ -9,6 +9,12 @@
</el-button>
<div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header">
<el-form-item label="仓库类型">
<el-select v-model="queryParams.params.warehouseTypeValue" placeholder="请选择仓库类型">
<el-option v-for="item in warehouseTypeList" :key="item.dictValue" :label="item.dictValue"
:value="item.dictValue" />
</el-select>
</el-form-item>
<el-form-item label="仓库名称">
<el-input v-model="queryParams.params.name" placeholder="" clearable />
</el-form-item>
@ -50,6 +56,7 @@
inactive-value="0" @change="enableChange(scope.row.sid,scope.row.usageStatus)" />
</template>
</el-table-column>
<el-table-column prop="warehouseTypeValue" label="仓库类型" align="center" />
<el-table-column prop="warehouseName" label="仓库名称" align="center" />
<el-table-column prop="warehouseCode" label="仓库编码" align="center" />
<el-table-column prop="manager" label="仓库主管" align="center" />
@ -57,6 +64,8 @@
<el-table-column prop="squareMeter" label="占地面积" align="center" />
<el-table-column prop="address" label="仓库地址" align="center" />
<el-table-column prop="sortNo" label="排序" align="center" />
<el-table-column prop="deptName" label="隶属部门 " align="center" />
<el-table-column prop="createOrgName" label="分公司 " align="center" />
</el-table>
</div>
<!-- End 项目列表 -->
@ -82,6 +91,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './warehouseAdd.vue'
import divInfo from './warehouseInfo.vue'
import {
typeValues,
} from '@/api/Common/dictcommons.js'
export default {
components: {
ButtonBar,
@ -132,13 +144,15 @@
size: 10,
total: 0,
params: {
warehouseTypeValue: "",
name: '',
code: "",
address: ""
}
},
sids: [],
selectionList: []
selectionList: [],
warehouseTypeList: [],
}
},
mounted() {
@ -146,6 +160,18 @@
},
created() {
this.loadList()
var params = {
type: "warehouse",
psid: '0'
}
typeValues(params).then(resp => {
console.log('>>>>>>>>>typeValues', resp)
this.warehouseTypeList = resp.data
}).catch(() => {})
},
methods: {
selectionLineChangeHandle(val) {
@ -225,6 +251,7 @@
size: 10,
total: 0,
params: {
warehouseTypeValue: "",
name: '',
code: "",
address: ""
@ -301,6 +328,7 @@
resetState() {
this.viewState = 1
this.loadList()
},
enableChange(sid, state) {
console.log('sid', sid)

94
yxt-as-ui/src/views/warehouse/warehouse/warehouseAdd.vue

@ -29,10 +29,16 @@
</el-col>
<el-col :span="16">
<div class="span-sty"><span class="must">*</span> 仓库名称</div>
<el-form-item prop="warehouseName">
<el-input v-model="formobj.warehouseName" placeholder="仓库名称" class="addinputw addinputInfo" clearable />
<div class="span-sty"><span class="must">*</span> 仓库类型</div>
<el-form-item prop="warehouseTypeValue">
<el-select v-model="formobj.warehouseTypeValue" placeholder="请选择仓库类型" class="addinputw addinputInfo"
@change="selectWarehouseTypeChange">
<el-option v-for="item in warehouseTypeList" :key="item.dictKey" :label="item.dictValue"
:value="item.dictKey" />
</el-select>
</el-form-item>
</el-col>
</el-row>
@ -40,14 +46,10 @@
<el-row>
<el-col :span="8">
<div class="span-sty">仓库类型</div>
<el-form-item prop="warehouseTypeValue">
<el-select v-model="formobj.warehouseTypeValue" placeholder="请选择仓库类型" class="addinputw addinputInfo"
@change="selectWarehouseTypeChange">
<el-option v-for="item in warehouseTypeList" :key="item.dictKey" :label="item.dictValue"
:value="item.dictKey" />
</el-select>
<div class="span-sty"><span class="must">*</span> 仓库名称</div>
<el-form-item prop="warehouseName">
<el-input v-model="formobj.warehouseName" placeholder="按配件所属车辆品牌命名" class="addinputw addinputInfo"
clearable />
</el-form-item>
</el-col>
@ -232,6 +234,11 @@
message: '请选择仓库管理员',
trigger: 'change'
}],
warehouseTypeValue: [{
required: true,
message: '请选择仓库类型',
trigger: 'change'
}],
}
}
},
@ -303,7 +310,70 @@
type: 'success',
message: resp.msg
})
this.handleReturn('true')
this.$confirm('是否继续添加仓库信息?', '温馨提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
//
var warehouseTypeKey = this.formobj.warehouseTypeKey
var warehouseTypeValue = this.formobj.warehouseTypeValue
this.formobj = {
sid: '',
warehouseName: '',
warehouseCode: '由系统自动生成',
warehouseTypeKey: warehouseTypeKey,
warehouseTypeValue: warehouseTypeValue,
contacts: "",
mob: "",
telephone: "",
manager: '',
longitude: '',
latitude: '',
usageStatus: "1",
address: '',
squareMeter: '',
sortNo: '',
remarks: '',
warehouseType: "0",
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
}).catch(() => {
//
this.formobj = {
sid: '',
warehouseName: '',
warehouseCode: '由系统自动生成',
warehouseTypeKey: '',
warehouseTypeValue: '',
contacts: "",
mob: "",
telephone: "",
manager: '',
longitude: '',
latitude: '',
usageStatus: "1",
address: '',
squareMeter: '',
sortNo: '',
remarks: '',
warehouseType: "0",
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$emit('doback')
});
} else {
// resp.code
}

9
yxt-as-ui/src/views/warehouse/warehouse/warehouseInfo.vue

@ -26,10 +26,11 @@
</el-col>
<el-col :span="16">
<div class="span-sty">仓库名称</div>
<div class="span-sty">仓库类型</div>
<el-form-item>
<span class="addinputInfo">{{formobj.warehouseName}}</span>
<span class="addinputInfo">{{formobj.warehouseTypeValue}}</span>
</el-form-item>
</el-col>
</el-row>
@ -37,9 +38,9 @@
<el-row>
<el-col :span="8">
<div class="span-sty">仓库类型</div>
<div class="span-sty">仓库名称</div>
<el-form-item>
<span class="addinputInfo">{{formobj.warehouseTypeValue}}</span>
<span class="addinputInfo">{{formobj.warehouseName}}</span>
</el-form-item>
</el-col>

52
yxt-as-ui/src/views/warehouse/warehouseArea/index.vue

@ -9,19 +9,27 @@
</el-button>
<div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header">
<el-form-item label="库区名称">
<el-input v-model="queryParams.params.name" placeholder="" clearable />
</el-form-item>
<el-form-item label="库区编码">
<el-input v-model="queryParams.params.code" placeholder="" clearable />
</el-form-item>
<el-form-item label="库区类型">
<el-select v-model="queryParams.params.warehouseAreaTypeName" placeholder="库区类型"
class="addinputw addinputInfo" @change="selectWrehouseAreaTypeChange">
<el-option v-for="item in warehouseAreaTypeLsit" :key="item.sid" :label="item.warehouseAreaTypeName"
:value="item.sid" />
</el-select>
<el-form-item label="库区编码">
<el-input v-model="queryParams.params.code" placeholder="" clearable />
</el-form-item>
<el-form-item label="所属区域">
<el-select v-model="queryParams.params.zoneSid" placeholder="所属区域"
@change="selectWarehouseZoneChange">
<el-option v-for="item in warehouseZoneList" :key="item.sid" :label="item.zoneName"
:value="item.sid" />
</el-select>
</el-form-item>
</el-form-item>
<el-form-item label="所属仓库">
<el-select v-model="queryParams.params.warehouseName" placeholder="所属仓库"
@ -31,13 +39,12 @@
</el-select>
</el-form-item>
<el-form-item label="所属区域">
<el-select v-model="queryParams.params.zoneSid" placeholder="所属区域" @change="selectWarehouseZoneChange">
<el-option v-for="item in warehouseZoneList" :key="item.sid" :label="item.zoneName"
:value="item.sid" />
<el-form-item label="所属仓库类型">
<el-select v-model="queryParams.params.warehouseTypeValue" placeholder="所属仓库类型">
<el-option v-for="item in warehouseTypeList" :key="item.dictValue" :label="item.dictValue"
:value="item.dictValue" />
</el-select>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button>
@ -68,12 +75,16 @@
</template>
</el-table-column>
<el-table-column prop="areaName" label="库区名称" align="center" />
<el-table-column prop="areaTypeName" label="库区类型" align="center" />
<el-table-column prop="areaCode" label="库区编码" align="center" />
<el-table-column prop="volume" label="库区容量" align="center" />
<el-table-column prop="unit" label="计量单位" align="center" />
<el-table-column prop="areaTypeName" label="库区类型" align="center" />
<el-table-column prop="warehouseName" label="所属仓库" align="center" />
<el-table-column prop="zoneName" label="所属区域" align="center" />
<el-table-column prop="warehouseName" label="所属仓库" align="center" />
<el-table-column prop="warehouseTypeValue" label="所属仓库类型" align="center" />
<el-table-column prop="deptName" label="隶属部门 " align="center" />
<el-table-column prop="createOrgName" label="分公司 " align="center" />
</el-table>
</div>
<!-- End 项目列表 -->
@ -100,6 +111,9 @@
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import divAdd from './warehouseAreaAdd.vue'
import {
typeValues,
} from '@/api/Common/dictcommons.js'
export default {
components: {
ButtonBar,
@ -157,13 +171,15 @@
warehouseName: '',
zoneSid: '',
zoneName: '',
warehouseTypeValue: "",
}
},
warehouseList: [],
warehouseZoneList: [],
warehouseAreaTypeLsit: [],
sids: [],
selectionList: []
selectionList: [],
warehouseTypeList: [],
}
},
mounted() {
@ -196,6 +212,18 @@
console.log('>>>>>>>>>getAllWarehouse', resp)
this.warehouseList = resp.data
}).catch(() => {})
var params = {
type: "warehouse",
psid: '0'
}
typeValues(params).then(resp => {
console.log('>>>>>>>>>typeValues', resp)
this.warehouseTypeList = resp.data
}).catch(() => {})
},
getWarehouseAreaType() {
var parpams = {
@ -315,6 +343,7 @@
warehouseName: '',
zoneSid: '',
zoneName: '',
warehouseTypeValue: "",
}
}
this.loadList()
@ -388,6 +417,7 @@
resetState() {
this.viewState = 1
this.loadList()
},
enableChange(sid, state) {
console.log('sid', sid)

215
yxt-as-ui/src/views/warehouse/warehouseArea/warehouseAreaAdd.vue

@ -19,6 +19,20 @@
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row class="first_row">
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 仓库类型</div>
<el-form-item prop="warehouseTypeValue">
<el-select v-model="formobj.warehouseTypeValue" placeholder="请选择仓库类型" class="addinputw addinputInfo"
@change="selectWarehouseTypeChange">
<el-option v-for="item in warehouseTypeList" :key="item.dictKey" :label="item.dictValue"
:value="item.dictKey" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 选择所属仓库</div>
@ -42,16 +56,27 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 库区类型</div>
<el-form-item prop="areaTypeName">
<el-select v-model="formobj.areaTypeName" placeholder="请选择库区类型" class="addinputw addinputInfo"
@change="selectWarehouseTypeValueChange">
<el-option v-for="item in areaTypeList" :key="item.sid" :label="item.warehouseAreaTypeName"
:value="item.sid" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 库区名称</div>
<el-form-item prop="areaName">
<el-input v-model="formobj.areaName" placeholder="库区名称" class="addinputw addinputInfo" clearable />
<el-input v-model="formobj.areaName" placeholder="按配件类型命名" class="addinputw addinputInfo" clearable />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">库区编码</div>
<el-form-item prop="areaCode">
@ -61,6 +86,10 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">库区容量</div>
@ -77,21 +106,8 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 库区类型</div>
<el-form-item prop="areaTypeName">
<el-select v-model="formobj.areaTypeName" placeholder="请选择库区类型" class="addinputw addinputInfo"
@change="selectWarehouseTypeValueChange">
<el-option v-for="item in warehouseTypeList" :key="item.sid" :label="item.warehouseAreaTypeName"
:value="item.sid" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="16">
<div class="span-sty">备注</div>
<el-form-item>
<el-input v-model="formobj.remarks" placeholder="备注" class="addinputw addinputInfo" clearable />
@ -112,6 +128,9 @@
import req2 from '@/api/warehouse/warehouse.js'
import req3 from '@/api/warehouse/warehouseAreaType.js'
import req4 from '@/api/warehouse/warehouseZone.js'
import {
typeValues,
} from '@/api/Common/dictcommons.js'
export default {
components: {},
data() {
@ -130,6 +149,8 @@
zoneSid: '',
areaTypeSid: "",
areaTypeName: "",
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
@ -138,8 +159,14 @@
},
warehouseList: [],
warehouseZoneList: [],
areaTypeList: [],
warehouseTypeList: [],
rules: {
warehouseTypeValue: [{
required: true,
message: '请选择仓库类型',
trigger: 'change'
}],
warehouseName: [{
required: true,
message: '请选择所属仓库',
@ -164,20 +191,27 @@
}
}
},
created() {
this.initData()
},
created() {},
methods: {
initData() {
var params = {
type: "warehouse",
psid: '0'
}
typeValues(params).then(resp => {
console.log('>>>>>>>>>typeValues', resp)
this.warehouseTypeList = resp.data
}).catch(() => {})
var parpams = {
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
}
req2.getAllWarehouse(parpams).then(resp => {
this.warehouseList = resp.data
})
req3.getAllWarehouseareatype(parpams).then(resp => {
this.warehouseTypeList = resp.data
this.areaTypeList = resp.data
})
},
@ -185,43 +219,6 @@
saveOrUpdate() {
console.log('>>>>>>>>>saveOrUpdate', this.formobj)
// if (this.formobj.warehouseSid == '' || this.formobj.warehouseName == '') {
// this.$message({
// showClose: true,
// type: 'warning',
// message: ""
// })
// return
// }
// if (this.formobj.areaName == '') {
// this.$message({
// showClose: true,
// type: 'warning',
// message: ""
// })
// return
// }
// if (this.formobj.areaCode == '') {
// this.$message({
// showClose: true,
// type: 'warning',
// message: ""
// })
// return
// }
// if (this.formobj.areaTypeSid == '' || this.formobj.areaTypeName == '') {
// this.$message({
// showClose: true,
// type: 'warning',
// message: ""
// })
// return
// }
this.$refs['form_obj'].validate((valid) => {
if (valid) {
@ -234,7 +231,65 @@
type: 'success',
message: resp.msg
})
this.handleReturn('true')
this.$confirm('是否继续添加仓库区域信息?', '温馨提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
//
var warehouseTypeKey = this.formobj.warehouseTypeKey
var warehouseTypeValue = this.formobj.warehouseTypeValue
var warehouseName = this.formobj.warehouseName
var warehouseSid = this.formobj.warehouseSid
var zoneName = this.formobj.zoneName
var zoneSid = this.formobj.zoneSid
this.formobj = {
sid: '',
areaName: '',
areaCode: '由系统自动生成',
volume: '',
unit: '',
remarks: '',
warehouseName: warehouseName,
warehouseSid: warehouseSid,
zoneName: zoneName,
zoneSid: zoneSid,
areaTypeSid: "",
areaTypeName: "",
warehouseTypeKey: warehouseTypeKey,
warehouseTypeValue: warehouseTypeValue,
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
}).catch(() => {
//
this.formobj = {
sid: '',
zoneName: '',
zoneCode: '由系统自动生成',
volume: '',
unit: '',
remarks: '',
warehouseName: '',
warehouseSid: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$emit('doback')
});
} else {
// resp.code
}
@ -259,6 +314,8 @@
zoneSid: '',
areaTypeSid: "",
areaTypeName: "",
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
@ -268,12 +325,14 @@
this.$emit('doback')
},
showAdd() {
this.initData()
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
showEdit(row) {
this.initData()
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
@ -288,6 +347,36 @@
this.formobj = row
})
},
selectWarehouseTypeChange(val) {
const choose = this.warehouseTypeList.filter((item) => item.dictKey == val)
console.log('>>>>>>>>>selectWarehouseChange', choose)
this.formobj.warehouseTypeKey = choose[0].dictKey
this.formobj.warehouseTypeValue = choose[0].dictValue
this.formobj.warehouseSid = ''
this.formobj.warehouseName = ''
this.formobj.zoneSid = ''
this.formobj.zoneName = ''
this.getWarehouseList(this.formobj.warehouseTypeValue)
},
getWarehouseList(val) {
var parpams = {
useOrgSid: window.sessionStorage.getItem('departmentSid'),
warehouseTypeValue: val
}
req2.selectWarehouseByType(parpams).then(resp => {
this.warehouseList = resp.data
})
},
selectWarehouseChange(val) {
const choose = this.warehouseList.filter((item) => item.sid == val)
console.log('>>>>>>>>>selectWarehouseChange', choose)
@ -316,7 +405,7 @@
},
selectWarehouseTypeValueChange(val) {
const choose = this.warehouseTypeList.filter((item) => item.sid == val)
const choose = this.areaTypeList.filter((item) => item.sid == val)
console.log('>>>>>>>>>selectWarehouseTypeValueChange', choose)
this.formobj.areaTypeSid = choose[0].sid
this.formobj.areaTypeName = choose[0].warehouseAreaTypeName

32
yxt-as-ui/src/views/warehouse/warehouseZone/warehouseZone.vue

@ -22,6 +22,13 @@
</el-select>
</el-form-item>
<el-form-item label="仓库类型">
<el-select v-model="queryParams.params.warehouseTypeValue" placeholder="请选择仓库类型">
<el-option v-for="item in warehouseTypeList" :key="item.dictValue" :label="item.dictValue"
:value="item.dictValue" />
</el-select>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
@ -58,6 +65,9 @@
<el-table-column prop="unit" label="计量单位" align="center" />
<el-table-column prop="remarks" label="备注" align="center" />
<el-table-column prop="warehouseName" label="所属仓库" align="center" />
<el-table-column prop="warehouseTypeValue" label="仓库类型" align="center" />
<el-table-column prop="deptName" label="隶属部门 " align="center" />
<el-table-column prop="createOrgName" label="分公司 " align="center" />
</el-table>
</div>
<!-- End 项目列表 -->
@ -84,6 +94,9 @@
import pageye from '@/components/pagination/pageye'
import divAdd from './warehouseZoneAdd.vue'
// import divInfo from './warehouseInfo.vue'
import {
typeValues,
} from '@/api/Common/dictcommons.js'
export default {
components: {
ButtonBar,
@ -134,6 +147,7 @@
size: 10,
total: 0,
params: {
warehouseTypeValue: "",
name: '',
code: "",
address: ""
@ -142,6 +156,7 @@
sids: [],
selectionList: [],
warehouseList: [],
warehouseTypeList: [],
}
},
mounted() {
@ -173,6 +188,19 @@
console.log('>>>>>>>>>getAllWarehouse', resp)
this.warehouseList = resp.data
}).catch(() => {})
var params = {
type: "warehouse",
psid: '0'
}
typeValues(params).then(resp => {
console.log('>>>>>>>>>typeValues', resp)
this.warehouseTypeList = resp.data
}).catch(() => {})
},
//
clicksearchShow() {
@ -240,7 +268,8 @@
params: {
name: '',
code: "",
address: ""
address: "",
warehouseTypeValue: "",
}
}
this.loadList()
@ -313,6 +342,7 @@
resetState() {
this.viewState = 1
this.loadList()
},
enableChange(sid, state) {
console.log('sid', sid)

137
yxt-as-ui/src/views/warehouse/warehouseZone/warehouseZoneAdd.vue

@ -19,6 +19,20 @@
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formaddcopy02">
<el-row class="first_row">
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 仓库类型</div>
<el-form-item prop="warehouseTypeValue">
<el-select v-model="formobj.warehouseTypeValue" placeholder="请选择仓库类型" class="addinputw addinputInfo"
@change="selectWarehouseTypeChange">
<el-option v-for="item in warehouseTypeList" :key="item.dictKey" :label="item.dictValue"
:value="item.dictKey" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 选择所属仓库</div>
@ -38,6 +52,10 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">区域编码</div>
<el-form-item prop="zoneCode">
@ -47,9 +65,6 @@
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">区域面积</div>
@ -66,13 +81,16 @@
</el-form-item>
</el-col>
<el-col :span="8">
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">备注</div>
<el-form-item>
<el-input v-model="formobj.remarks" placeholder="备注" class="addinputw addinputInfo" clearable />
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
@ -83,6 +101,9 @@
<script>
import req from '@/api/warehouse/warehouseZone.js'
import req2 from '@/api/warehouse/warehouse.js'
import {
typeValues,
} from '@/api/Common/dictcommons.js'
export default {
components: {},
data() {
@ -98,6 +119,8 @@
remarks: '',
warehouseName: '',
warehouseSid: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
@ -105,7 +128,13 @@
},
warehouseList: [],
warehouseTypeList: [],
rules: {
warehouseTypeValue: [{
required: true,
message: '请选择仓库类型',
trigger: 'change'
}],
warehouseName: [{
required: true,
message: '请选择所属仓库',
@ -121,16 +150,20 @@
}
},
created() {
this.initData()
},
methods: {
initData() {
var parpams = {
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
var params = {
type: "warehouse",
psid: '0'
}
req2.getAllWarehouse(parpams).then(resp => {
this.warehouseList = resp.data
})
typeValues(params).then(resp => {
console.log('>>>>>>>>>typeValues', resp)
this.warehouseTypeList = resp.data
}).catch(() => {})
},
@ -148,7 +181,58 @@
type: 'success',
message: resp.msg
})
this.handleReturn('true')
this.$confirm('是否继续添加仓库区域信息?', '温馨提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
//
var warehouseTypeKey = this.formobj.warehouseTypeKey
var warehouseTypeValue = this.formobj.warehouseTypeValue
var warehouseName = this.formobj.warehouseName
var warehouseSid = this.formobj.warehouseSid
this.formobj = {
sid: '',
zoneName: '',
zoneCode: '由系统自动生成',
volume: '',
unit: '',
remarks: '',
warehouseName: warehouseName,
warehouseSid: warehouseSid,
warehouseTypeKey: warehouseTypeKey,
warehouseTypeValue: warehouseTypeValue,
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
}).catch(() => {
//
this.formobj = {
sid: '',
zoneName: '',
zoneCode: '由系统自动生成',
volume: '',
unit: '',
remarks: '',
warehouseName: '',
warehouseSid: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
userSid: window.sessionStorage.getItem('userSid'),
}
this.$emit('doback')
});
} else {
// resp.code
}
@ -169,6 +253,8 @@
remarks: '',
warehouseName: '',
warehouseSid: '',
warehouseTypeKey: '',
warehouseTypeValue: '',
useOrgSid: window.sessionStorage.getItem('departmentSid'),
orgPath: window.sessionStorage.getItem('defaultOrgPath'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
@ -178,6 +264,7 @@
this.$emit('doback')
},
showAdd() {
this.initData()
this.title = "【新增】"
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
@ -185,6 +272,7 @@
},
showEdit(row) {
this.initData()
this.title = "【编辑】",
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
@ -199,6 +287,31 @@
.catch(e => {
this.formobj = row
})
},
selectWarehouseTypeChange(val) {
const choose = this.warehouseTypeList.filter((item) => item.dictKey == val)
console.log('>>>>>>>>>selectWarehouseChange', choose)
this.formobj.warehouseTypeKey = choose[0].dictKey
this.formobj.warehouseTypeValue = choose[0].dictValue
this.formobj.warehouseSid = ''
this.formobj.warehouseName = ''
this.getWarehouseList(this.formobj.warehouseTypeValue)
},
getWarehouseList(val) {
var parpams = {
useOrgSid: window.sessionStorage.getItem('departmentSid'),
warehouseTypeValue: val
}
req2.selectWarehouseByType(parpams).then(resp => {
this.warehouseList = resp.data
})
},
selectWarehouseChange(val) {
const choose = this.warehouseList.filter((item) => item.sid == val)

70
yxt-as-ui/src/views/workFlow/fanjiesuanFlow/workslrsettlementDaiBan.vue

@ -92,29 +92,33 @@
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="200" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="repairerName" label="维修人" align="center" width="200" />
<el-table-column prop="examineHourPrice" label="工时提成" align="center" width="100" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="150" />
<el-table-column prop="hours" label="工时数" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="sitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="amount" label="金额" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="200" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">商品</div>
<el-table :key="tableKey" :data="formobj.goodsDetailsVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center" />
<el-table-column prop="goodsID" label="商品ID" align="center" width="200" />
<el-table-column prop="goodsSpuName" label="商品名称" width="100" align="center" />
<el-table-column prop="goodsSkuCode" label="图号" width="100" align="center" />
<el-table-column prop="goodsSkuOwnSpec" label="规格" width="100" align="center" />
<el-table-column prop="unit" label="单位" width="100" align="center" />
<el-table-column prop="warehouseName" label="仓库" width="100" align="center" />
<el-table-column prop="count" label="数量" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="count" label="数量" width="100" align="center" />
<el-table-column prop="goodsReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" width="100" align="center" />
<el-table-column prop="amount" label="金额" width="100" align="center" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="goodsSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column prop="partsSellers" label="配件销售人" align="center" min-width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">附加项目</div>
@ -128,7 +132,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.outCost }}</span>
<span>利润额{{ formobj.outPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.outRemarks }}</span></el-form-item>
</el-col>
@ -143,7 +156,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.subsidyCost }}</span>
<span>利润额{{ formobj.subsidyPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.subsidyRemarks }}</span></el-form-item>
</el-col>
@ -159,10 +181,19 @@
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.rescueCost }}</span>
<span>利润额{{ formobj.rescuePrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.rescueRemarks }}</span></el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="4">
<el-form-item>
<div style="display: flex;flex-direction: column;justify-content:flex-start;align-items: flex-start;">
<el-button type="text" v-for="(item, index) in formobj.fileName" :key="index" @click="handleOpen(item.url)">{{ item.name }}</el-button>
@ -173,7 +204,9 @@
<el-table :key="subjoinKey" :data="formobj.aitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="aitemName" label="其它附加项目" align="center" width="200" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="aitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="aitemCost" label="成本" align="center" width="150" />
<el-table-column prop="aitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</el-form>
@ -277,12 +310,18 @@ export default {
actualAmount: '',
outAmount: '',
outKPAmount: '',
outCost: '',
outPrint: '',
outRemarks: '',
subsidyAmount: '',
subsidyKPAmount: '',
subsidyCost: '',
subsidyPrint: '',
subsidyRemarks: '',
rescueAmount: '',
rescueKPAmount: '',
rescueCost: '',
rescuePrint: '',
rescueRemarks: '',
fileName: []
},
@ -355,7 +394,7 @@ export default {
},
methods: {
showInfo(sid) {
this.viewTitle = '工单反结算详情'
this.viewTitle = '维修单反结算申请详情'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
@ -377,6 +416,9 @@ export default {
}
})
},
handleOpen(value) {
window.open(value, '_blank')
},
//
openCountersign(val) {
this.operation = val

70
yxt-as-ui/src/views/workFlow/fanjiesuanFlow/workslrsettlementEdit.vue

@ -90,29 +90,33 @@
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="200" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="repairerName" label="维修人" align="center" width="200" />
<el-table-column prop="examineHourPrice" label="工时提成" align="center" width="100" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="150" />
<el-table-column prop="hours" label="工时数" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="sitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="amount" label="金额" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="200" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">商品</div>
<el-table :key="tableKey" :data="formobj.goodsDetailsVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center" />
<el-table-column prop="goodsID" label="商品ID" align="center" width="200" />
<el-table-column prop="goodsSpuName" label="商品名称" width="100" align="center" />
<el-table-column prop="goodsSkuCode" label="图号" width="100" align="center" />
<el-table-column prop="goodsSkuOwnSpec" label="规格" width="100" align="center" />
<el-table-column prop="unit" label="单位" width="100" align="center" />
<el-table-column prop="warehouseName" label="仓库" width="100" align="center" />
<el-table-column prop="count" label="数量" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="count" label="数量" width="100" align="center" />
<el-table-column prop="goodsReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" width="100" align="center" />
<el-table-column prop="amount" label="金额" width="100" align="center" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="goodsSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column prop="partsSellers" label="配件销售人" align="center" min-width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">附加项目</div>
@ -126,7 +130,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.outCost = getNumber(formobj.outCost, 2)" v-model="formobj.outCost" clearable placeholder="" />
<span>利润额{{ formobj.outPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.outRemarks }}</span></el-form-item>
</el-col>
@ -141,7 +154,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.subsidyCost = getNumber(formobj.subsidyCost, 2)" v-model="formobj.subsidyCost" clearable placeholder="" />
<span>利润额{{ formobj.subsidyPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.subsidyRemarks }}</span></el-form-item>
</el-col>
@ -157,10 +179,19 @@
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.rescueCost = getNumber(formobj.rescueCost, 2)" v-model="formobj.rescueCost" clearable placeholder="" />
<span>利润额{{ formobj.rescuePrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.rescueRemarks }}</span></el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="4">
<el-form-item>
<div style="display: flex;flex-direction: column;justify-content:flex-start;align-items: flex-start;">
<el-button type="text" v-for="(item, index) in formobj.fileName" :key="index" @click="handleOpen(item.url)">{{ item.name }}</el-button>
@ -171,7 +202,9 @@
<el-table :key="subjoinKey" :data="formobj.aitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="aitemName" label="其它附加项目" align="center" width="200" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="aitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="aitemCost" label="成本" align="center" width="150" />
<el-table-column prop="aitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</el-form>
@ -236,12 +269,18 @@ export default {
actualAmount: '',
outAmount: '',
outKPAmount: '',
outCost: '',
outPrint: '',
outRemarks: '',
subsidyAmount: '',
subsidyKPAmount: '',
subsidyCost: '',
subsidyPrint: '',
subsidyRemarks: '',
rescueAmount: '',
rescueKPAmount: '',
rescueCost: '',
rescuePrint: '',
rescueRemarks: '',
fileName: []
},
@ -267,7 +306,7 @@ export default {
},
methods: {
showInfo(sid) {
this.viewTitle = '【编辑】工单反结算'
this.viewTitle = '【编辑】维修单反结算申请'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
@ -277,6 +316,9 @@ export default {
}
})
},
handleOpen(value) {
window.open(value, '_blank')
},
saveOrUpdate() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {

70
yxt-as-ui/src/views/workFlow/fanjiesuanFlow/workslrsettlementYiBan.vue

@ -89,29 +89,33 @@
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="200" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="repairerName" label="维修人" align="center" width="200" />
<el-table-column prop="examineHourPrice" label="工时提成" align="center" width="100" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="150" />
<el-table-column prop="hours" label="工时数" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="sitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="amount" label="金额" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="200" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">商品</div>
<el-table :key="tableKey" :data="formobj.goodsDetailsVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center" />
<el-table-column prop="goodsID" label="商品ID" align="center" width="200" />
<el-table-column prop="goodsSpuName" label="商品名称" width="100" align="center" />
<el-table-column prop="goodsSkuCode" label="图号" width="100" align="center" />
<el-table-column prop="goodsSkuOwnSpec" label="规格" width="100" align="center" />
<el-table-column prop="unit" label="单位" width="100" align="center" />
<el-table-column prop="warehouseName" label="仓库" width="100" align="center" />
<el-table-column prop="count" label="数量" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="count" label="数量" width="100" align="center" />
<el-table-column prop="goodsReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" width="100" align="center" />
<el-table-column prop="amount" label="金额" width="100" align="center" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="goodsSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column prop="partsSellers" label="配件销售人" align="center" min-width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">附加项目</div>
@ -125,7 +129,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.outCost }}</span>
<span>利润额{{ formobj.outPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.outRemarks }}</span></el-form-item>
</el-col>
@ -140,7 +153,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.subsidyCost }}</span>
<span>利润额{{ formobj.subsidyPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.subsidyRemarks }}</span></el-form-item>
</el-col>
@ -156,10 +178,19 @@
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.rescueCost }}</span>
<span>利润额{{ formobj.rescuePrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.rescueRemarks }}</span></el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="4">
<el-form-item>
<div style="display: flex;flex-direction: column;justify-content:flex-start;align-items: flex-start;">
<el-button type="text" v-for="(item, index) in formobj.fileName" :key="index" @click="handleOpen(item.url)">{{ item.name }}</el-button>
@ -170,7 +201,9 @@
<el-table :key="subjoinKey" :data="formobj.aitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="aitemName" label="其它附加项目" align="center" width="200" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="aitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="aitemCost" label="成本" align="center" width="150" />
<el-table-column prop="aitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="200" />
</el-table>
</el-form>
@ -235,12 +268,18 @@ export default {
actualAmount: '',
outAmount: '',
outKPAmount: '',
outCost: '',
outPrint: '',
outRemarks: '',
subsidyAmount: '',
subsidyKPAmount: '',
subsidyCost: '',
subsidyPrint: '',
subsidyRemarks: '',
rescueAmount: '',
rescueKPAmount: '',
rescueCost: '',
rescuePrint: '',
rescueRemarks: '',
fileName: []
},
@ -284,7 +323,7 @@ export default {
},
methods: {
showInfo(sid) {
this.viewTitle = '工单反结算详情'
this.viewTitle = '维修单反结算申请详情'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
@ -301,6 +340,9 @@ export default {
}
})
},
handleOpen(value) {
window.open(value, '_blank')
},
/** 确认撤回任务 */
openRevoke() {
this.$confirm('是否确认执行撤回操作', '提示', {

49
yxt-as-ui/src/views/workFlow/gongdankaipiaoFlow/relation/chooseRepairbill.vue

@ -2,7 +2,7 @@
<div class="app-container">
<div>
<div class="tab-header webtop">
<div>选择维修</div>
<div>选择维修单</div>
<div>
<el-button type="primary" size="small" @click="AddUpdateReturn">确定</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
@ -12,8 +12,11 @@
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">
<el-form-item label="工单编号" class="searchlist">
<el-form ref="listQueryform" :inline="true" :model="listQuery" class="tab-header">
<el-form-item label="维修单类型" class="searchlist">
<el-input v-model="listQuery.params.billType" placeholder="" clearable/>
</el-form-item>
<el-form-item label="维修单编号" class="searchlist">
<el-input v-model="listQuery.params.billNo" placeholder="" clearable/>
</el-form-item>
<el-form-item label="客户名称" class="searchlist">
@ -22,10 +25,13 @@
<el-form-item label="车牌号" class="searchlist">
<el-input v-model="listQuery.params.vehMark" placeholder="" clearable />
</el-form-item>
<el-form-item label="进厂日期">
<el-date-picker v-model="listQuery.params.entryTimeStart" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-form-item label="车架号" class="searchlist">
<el-input v-model="listQuery.params.vinNo" placeholder="" clearable />
</el-form-item>
<el-form-item label="结算日期">
<el-date-picker v-model="listQuery.params.settleTimeStart" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.entryTimeEnd" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
<el-date-picker v-model="listQuery.params.settleTimeEnd" value-format="yyyy-MM-dd" format="yyyy-MM-dd" type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
@ -41,14 +47,19 @@
<el-table :key="tableKey" ref="multipleTable" v-loading="listLoading" :data="list" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column width="50" type="selection" align="center"/>
<el-table-column width="80" label="序号" type="index" :index="indexMethod" align="center"/>
<el-table-column prop="billNo" label="工单编号" align="center" width="170" />
<el-table-column prop="billType" label="工单类型" align="center" width="120" />
<el-table-column prop="isGoOut" label="是否外出" align="center" width="100" />
<el-table-column prop="billType" label="维修单类型" align="center" width="140" />
<el-table-column prop="billNo" label="维修单编号" align="center" width="170" />
<el-table-column prop="customerName" label="客户名称" align="center" min-width="120" />
<el-table-column prop="mobile" label="联系电话" align="center" width="120" />
<el-table-column prop="vinNo" label="车架号" align="center" width="130" />
<el-table-column prop="vehMark" label="车牌号" align="center" width="130" />
<el-table-column prop="entryTime" label="进厂日期" align="center" width="120" />
<el-table-column prop="vinNo" label="车架号" align="center" width="130" />
<el-table-column prop="taxItems" label="加税点项目" align="center" width="130" />
<el-table-column prop="hourAmount" label="工时费" align="center" width="130" />
<el-table-column prop="goodsAmount" label="材料费" align="center" width="130" />
<el-table-column prop="rescueAmount" label="施救费" align="center" width="130" />
<el-table-column prop="outAmount" label="外出费" align="center" width="130" />
<el-table-column prop="otherAmount" label="其它费用" align="center" width="130" />
<el-table-column prop="settleTime" label="结算日期" align="center" width="120" />
<el-table-column prop="totalAmount" label="结算金额合计" align="center" width="150" />
</el-table>
</div>
<div class="pages">
@ -83,11 +94,13 @@ export default {
current: 1,
size: 5,
params: {
billType: '',
billNo: '',
customerName: '',
vehMark: '',
entryTimeStart: '',
entryTimeEnd: '',
vinNo: '',
settleTimeStart: '',
settleTimeEnd: '',
deptSid: ''
},
total: 0
@ -119,7 +132,7 @@ export default {
this.list = response.data.records
} else {
this.listQuery.total = 0
this.list = []
this.list = []
}
})
},
@ -133,11 +146,13 @@ export default {
this.listQuery.current = 1
this.listQuery.size = 5
this.listQuery.total = 0
this.listQuery.params.billType = ''
this.listQuery.params.billNo = ''
this.listQuery.params.customerName = ''
this.listQuery.params.vehMark = ''
this.listQuery.params.entryTimeStart = ''
this.listQuery.params.entryTimeEnd = ''
this.listQuery.params.vinNo = ''
this.listQuery.params.settleTimeStart = ''
this.listQuery.params.settleTimeEnd = ''
this.getList()
},
handleSelectionChange(row) {

12
yxt-as-ui/src/views/workFlow/gongdankaipiaoFlow/workorderinvoicingDaiBan.vue

@ -26,6 +26,12 @@
<el-form-item><span class="addinputInfo">{{ formobj.createTime }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">开票单位</div>
<el-form-item><span class="addinputInfo">{{ formobj.purchaseSystemName }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">开票名称</div>
@ -55,6 +61,7 @@
<div class="title">维修单列表</div>
<el-table :key="tableKey" :data="formobj.asBwinvoiceapplyDetailList" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="billType" label="维修单类型" align="center" width="140" />
<el-table-column prop="sourceBillNo" label="维修单号" align="center" width="170" />
<el-table-column prop="customerName" label="客户名称" align="center" min-width="120" />
<el-table-column prop="vehMark" label="车牌号" align="center" width="150" />
@ -63,12 +70,15 @@
<el-table-column prop="taxItems" label="加税点项目" align="center" min-width="140" />
<el-table-column prop="hourAmount" label="工时费" align="center" width="120" />
<el-table-column prop="goodsAmount" label="材料费" align="center" width="120" />
<el-table-column prop="outAmount" label="材料费" align="center" width="120" />
<el-table-column prop="rescueAmount" label="施救费" align="center" width="120" />
<el-table-column prop="outAmount" label="外出费" align="center" width="120" />
<el-table-column prop="otherAmount" label="其它费用" align="center" width="120" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="totalAmount" label="费用合计" align="center" width="120" />
</el-table>
</el-form>
</el-form>
</div>
</div>
<!-- 选择待办人 的弹出框-->
@ -144,6 +154,8 @@ export default {
taskId: '',
nodeId: '',
nodeState: '',
purchaseSystemName: '',
purchaseSystemSid: '',
fileList: [],
asBwinvoiceapplyDetailList: []
},

55
yxt-as-ui/src/views/workFlow/gongdankaipiaoFlow/workorderinvoicingEdit.vue

@ -4,7 +4,6 @@
<div class="tab-header webtop">
<div>{{ viewTitle }}</div>
<div>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="chooseGd()">选择工单</el-button>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="saveOrUpdate()">保存</el-button>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="submit()">提交</el-button>
</div>
@ -25,6 +24,16 @@
<el-form-item><span class="addinputInfo">{{ formobj.createTime }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty"><span class="icon">*</span>开票单位</div>
<el-form-item prop="purchaseSystemName">
<el-select class="addinputInfo" v-model="formobj.purchaseSystemName" placeholder="请选择" @change="changePurchase" filterable clearable>
<el-option v-for="item in purchase_list" :key="item.deptSid" :label="item.purchaseSystemName" :value="item.purchaseSystemName"/>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty"><span class="icon">*</span>开票名称</div>
@ -57,9 +66,18 @@
</el-form-item>
</el-col>
</el-row>
<div class="title">维修单列表</div>
<div class="title titleOne">
<div>维修单列表</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="chooseGd()">选择工单</el-button>
</div>
<el-table :key="tableKey" :data="formobj.asBwinvoiceapplyDetailList" :index="index" border style="width: 100%">
<el-table-column width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="操作" align="center" width="100">
<template slot-scope="scope">
<el-button type="danger" size="small" @click="handleDelete(scope.$index)">删除</el-button>
</template>
</el-table-column>
<el-table-column prop="billType" label="维修单类型" align="center" width="140" />
<el-table-column prop="sourceBillNo" label="维修单号" align="center" width="170" />
<el-table-column prop="customerName" label="客户名称" align="center" min-width="120" />
<el-table-column prop="vehMark" label="车牌号" align="center" width="150" />
@ -68,9 +86,11 @@
<el-table-column prop="taxItems" label="加税点项目" align="center" min-width="140" />
<el-table-column prop="hourAmount" label="工时费" align="center" width="120" />
<el-table-column prop="goodsAmount" label="材料费" align="center" width="120" />
<el-table-column prop="outAmount" label="材料费" align="center" width="120" />
<el-table-column prop="rescueAmount" label="施救费" align="center" width="120" />
<el-table-column prop="outAmount" label="外出费" align="center" width="120" />
<el-table-column prop="otherAmount" label="其它费用" align="center" width="120" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="totalAmount" label="费用合计" align="center" width="120" />
</el-table>
</el-form>
@ -85,7 +105,7 @@
import req from '@/api/operation/workorderinvoicing'
import chooseRepairbill from './relation/chooseRepairbill'
import uploadImg from '@/components/uploadFile/uploadImg'
import { typeValues } from '@/api/Common/dictcommons'
import { typeValues, fetchDetailsByUseOrgSid } from '@/api/Common/dictcommons'
export default {
name: 'WorkOrderInvoicingEdit',
@ -100,6 +120,7 @@ export default {
submitdisabled: false,
tableKey: 1,
index: 0,
purchase_list: [],
invoiceType_list: [],
formobj: {
sid: '',
@ -121,10 +142,13 @@ export default {
taskId: '',
nodeId: '',
nodeState: '',
purchaseSystemName: '',
purchaseSystemSid: '',
fileList: [],
asBwinvoiceapplyDetailList: []
},
rules: {
purchaseSystemName: [{ required: true, message: '开票单位不能为空', trigger: 'change' }],
invoiceTitle: [{ required: true, message: '开票名称不能为空', trigger: 'blur' }],
invoiceTypeValue: [{ required: true, message: '开票类型不能为空', trigger: 'change' }],
invoiceMoney: [{ required: true, message: '开票金额不能为空', trigger: 'blur' }]
@ -184,9 +208,22 @@ export default {
if (res.success) {
this.formobj = res.data
this.formobj.instanceId = res.data.procInstId
fetchDetailsByUseOrgSid(this.formobj.useOrgSid).then((resp) => {
if (resp.success) {
this.purchase_list = resp.data
}
})
}
})
},
changePurchase(value) {
const choose = this.purchase_list.filter((item) => item.purchaseSystemName === value)
if (choose.length > 0 && choose !== null) {
this.formobj.purchaseSystemSid = choose[0].deptSid
} else {
this.formobj.purchaseSystemSid = ''
}
},
invoiceTypeChange(value) {
const choose = this.invoiceType_list.filter((item) => item.dictValue === value)
if (choose.length > 0 && choose !== null) {
@ -200,6 +237,9 @@ export default {
const aa = []
this.$refs['divGD'].showData(aa, this.formobj.deptSid)
},
handleDelete(index) {
this.formobj.asBwinvoiceapplyDetailList.splice(index, 1)
},
backData(value) {
this.viewState = 1
if (value.length > 0) {
@ -207,6 +247,8 @@ export default {
this.formobj.asBwinvoiceapplyDetailList.push({
sid: '',
mainSid: '',
billType: e.billType,
billTypeKey: e.billTypeKey,
sourceBillSid: e.sid,
sourceBillNo: e.billNo,
customerSid: e.customerSid,
@ -294,4 +336,11 @@ export default {
/deep/ .el-form-item__error {
margin-left: 120px !important;
}
.titleOne {
padding: 7px;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
</style>

11
yxt-as-ui/src/views/workFlow/gongdankaipiaoFlow/workorderinvoicingYiBan.vue

@ -23,6 +23,12 @@
<el-form-item><span class="addinputInfo">{{ formobj.createTime }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">开票单位</div>
<el-form-item><span class="addinputInfo">{{ formobj.purchaseSystemName }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">开票名称</div>
@ -52,6 +58,7 @@
<div class="title">维修单列表</div>
<el-table :key="tableKey" :data="formobj.asBwinvoiceapplyDetailList" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="billType" label="维修单类型" align="center" width="140" />
<el-table-column prop="sourceBillNo" label="维修单号" align="center" width="170" />
<el-table-column prop="customerName" label="客户名称" align="center" min-width="120" />
<el-table-column prop="vehMark" label="车牌号" align="center" width="150" />
@ -60,9 +67,11 @@
<el-table-column prop="taxItems" label="加税点项目" align="center" min-width="140" />
<el-table-column prop="hourAmount" label="工时费" align="center" width="120" />
<el-table-column prop="goodsAmount" label="材料费" align="center" width="120" />
<el-table-column prop="outAmount" label="材料费" align="center" width="120" />
<el-table-column prop="rescueAmount" label="施救费" align="center" width="120" />
<el-table-column prop="outAmount" label="外出费" align="center" width="120" />
<el-table-column prop="otherAmount" label="其它费用" align="center" width="120" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="totalAmount" label="费用合计" align="center" width="120" />
</el-table>
</el-form>
@ -102,6 +111,8 @@ export default {
taskId: '',
nodeId: '',
nodeState: '',
purchaseSystemName: '',
purchaseSystemSid: '',
fileList: [],
asBwinvoiceapplyDetailList: []
},

80
yxt-as-ui/src/views/workFlow/jiesuanFlow/settleAccountsDaiBan.vue

@ -47,7 +47,7 @@
<el-form-item><span class="addinputInfo">{{ formobj.waitorName }}</span></el-form-item>
</el-col>
</el-row>
<el-row v-if="formobj.billType !== ''">
<el-row>
<el-col :span="8">
<div class="span-sty">维修单类型</div>
<el-form-item><span class="addinputInfo">{{ formobj.billType }}</span></el-form-item>
@ -75,7 +75,7 @@
<el-form-item><span class="addinputInfo">{{ formobj.vehMark }}/{{ formobj.vinNo }}</span></el-form-item>
</el-col>
</el-row>
<el-row v-if="formobj.billType !== ''">
<el-row>
<el-col :span="8">
<div class="span-sty">是否开票</div>
<el-form-item><span class="addinputInfo">{{ formobj.isInvoicing == '1' ? '是' : formobj.isInvoicing == '0' ? '否' : '' }}</span></el-form-item>
@ -111,29 +111,38 @@
<el-form-item><span class="addinputInfo">{{ formobj.profit }}</span></el-form-item>
</el-col>
</el-row>
<div v-if="formobj.sitemVos.length > 0">
<div class="title">维修项目</div>
<el-table :key="serviceKey" :data="formobj.sitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="200" />
<el-table-column prop="sitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
</div>
<div class="title">维修项目</div>
<el-table :key="serviceKey" :data="formobj.sitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="200" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="150" />
<el-table-column prop="hours" label="工时数" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="sitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="200" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">商品</div>
<el-table :key="tableKey" :data="formobj.goodsDetailsVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center" />
<el-table-column prop="goodsID" label="商品ID" align="center" width="200" />
<el-table-column prop="goodsSpuName" label="商品名称" width="100" align="center" />
<el-table-column prop="goodsSkuCode" label="图号" width="100" align="center" />
<el-table-column prop="count" label="数量" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="goodsReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="goodsSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column prop="partsSellers" label="配件销售人" align="center" min-width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">附加项目</div>
@ -147,7 +156,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.outCost }}</span>
<span>利润额{{ formobj.outPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.outRemarks }}</span></el-form-item>
</el-col>
@ -162,7 +180,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.subsidyCost }}</span>
<span>利润额{{ formobj.subsidyPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.subsidyRemarks }}</span></el-form-item>
</el-col>
@ -178,10 +205,19 @@
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.rescueCost }}</span>
<span>利润额{{ formobj.rescuePrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.rescueRemarks }}</span></el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="4">
<el-form-item>
<div style="display: flex;flex-direction: column;justify-content:flex-start;align-items: flex-start;">
<el-button type="text" v-for="(item, index) in formobj.fileName" :key="index" @click="handleOpen(item.url)">{{ item.name }}</el-button>
@ -297,12 +333,18 @@ export default {
aitemVos: [],
outAmount: '',
outKPAmount: '',
outCost: '',
outPrint: '',
outRemarks: '',
subsidyAmount: '',
subsidyKPAmount: '',
subsidyCost: '',
subsidyPrint: '',
subsidyRemarks: '',
rescueAmount: '',
rescueKPAmount: '',
rescueCost: '',
rescuePrint: '',
rescueRemarks: '',
fileName: [],
taskId: '',
@ -377,7 +419,7 @@ export default {
},
methods: {
showInfo(sid) {
this.viewTitle = '结算申请详情'
this.viewTitle = '维修单结算申请详情'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})

98
yxt-as-ui/src/views/workFlow/jiesuanFlow/settleAccountsEdit.vue

@ -45,7 +45,7 @@
<el-form-item><span class="addinputInfo">{{ formobj.waitorName }}</span></el-form-item>
</el-col>
</el-row>
<el-row v-if="formobj.billType !== ''">
<el-row>
<el-col :span="8">
<div class="span-sty">维修单类型</div>
<el-form-item><span class="addinputInfo">{{ formobj.billType }}</span></el-form-item>
@ -73,7 +73,7 @@
<el-form-item><span class="addinputInfo">{{ formobj.vehMark }}/{{ formobj.vinNo }}</span></el-form-item>
</el-col>
</el-row>
<el-row v-if="formobj.billType !== ''">
<el-row>
<el-col :span="8">
<div class="span-sty">是否开票</div>
<el-form-item><span class="addinputInfo">{{ formobj.isInvoicing == '1' ? '是' : formobj.isInvoicing == '0' ? '否' : '' }}</span></el-form-item>
@ -109,29 +109,38 @@
<el-form-item><span class="addinputInfo">{{ formobj.profit }}</span></el-form-item>
</el-col>
</el-row>
<div v-if="formobj.sitemVos.length > 0">
<div class="title">维修项目</div>
<el-table :key="serviceKey" :data="formobj.sitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="200" />
<el-table-column prop="sitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
</div>
<div class="title">维修项目</div>
<el-table :key="serviceKey" :data="formobj.sitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="200" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="150" />
<el-table-column prop="hours" label="工时数" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="sitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="200" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">商品</div>
<el-table :key="tableKey" :data="formobj.goodsDetailsVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center" />
<el-table-column prop="goodsID" label="商品ID" align="center" width="200" />
<el-table-column prop="goodsSpuName" label="商品名称" width="100" align="center" />
<el-table-column prop="goodsSkuCode" label="图号" width="100" align="center" />
<el-table-column prop="count" label="数量" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="goodsReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="goodsSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column prop="partsSellers" label="配件销售人" align="center" min-width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">附加项目</div>
@ -145,7 +154,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.outCost = getNumber(formobj.outCost, 2)" v-model="formobj.outCost" clearable placeholder="" />
<span>利润额{{ formobj.outPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.outRemarks }}</span></el-form-item>
</el-col>
@ -160,7 +178,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.subsidyCost = getNumber(formobj.subsidyCost, 2)" v-model="formobj.subsidyCost" clearable placeholder="" />
<span>利润额{{ formobj.subsidyPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.subsidyRemarks }}</span></el-form-item>
</el-col>
@ -176,10 +203,19 @@
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<el-input class="addinputInfo" style="width: 20%" @keyup.native="formobj.rescueCost = getNumber(formobj.rescueCost, 2)" v-model="formobj.rescueCost" clearable placeholder="" />
<span>利润额{{ formobj.rescuePrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.rescueRemarks }}</span></el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="4">
<el-form-item>
<div style="display: flex;flex-direction: column;justify-content:flex-start;align-items: flex-start;">
<el-button type="text" v-for="(item, index) in formobj.fileName" :key="index" @click="handleOpen(item.url)">{{ item.name }}</el-button>
@ -256,12 +292,18 @@ export default {
aitemVos: [],
outAmount: '',
outKPAmount: '',
outCost: '',
outPrint: '',
outRemarks: '',
subsidyAmount: '',
subsidyKPAmount: '',
subsidyCost: '',
subsidyPrint: '',
subsidyRemarks: '',
rescueAmount: '',
rescueKPAmount: '',
rescueCost: '',
rescuePrint: '',
rescueRemarks: '',
fileName: [],
taskId: '',
@ -288,8 +330,26 @@ export default {
}, '*')
},
methods: {
getNumber(val, limit) {
val = val.replace(/[^0-9.]/g, '') //
val = val.replace(/^00/, '0.') // 0
val = val.replace(/^\./g, '0.') // 0.
val = val.replace(/\.{2,}/g, '.') //
val = val.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.'); //
/^0\d+/.test(val) ? val = val.slice(1) : '' // 0
const str = '^(\\d+)\\.(\\d{' + limit + '}).*$'
const reg = new RegExp(str)
if (limit === 0) {
//
val = val.replace(reg, '$1')
} else {
//
val = val.replace(reg, '$1.$2')
}
return val
},
showInfo(sid) {
this.viewTitle = '【编辑】结算申请'
this.viewTitle = '【编辑】维修单结算申请'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})

80
yxt-as-ui/src/views/workFlow/jiesuanFlow/settleAccountsYiBan.vue

@ -44,7 +44,7 @@
<el-form-item><span class="addinputInfo">{{ formobj.waitorName }}</span></el-form-item>
</el-col>
</el-row>
<el-row v-if="formobj.billType !== ''">
<el-row>
<el-col :span="8">
<div class="span-sty">维修单类型</div>
<el-form-item><span class="addinputInfo">{{ formobj.billType }}</span></el-form-item>
@ -72,7 +72,7 @@
<el-form-item><span class="addinputInfo">{{ formobj.vehMark }}/{{ formobj.vinNo }}</span></el-form-item>
</el-col>
</el-row>
<el-row v-if="formobj.billType !== ''">
<el-row>
<el-col :span="8">
<div class="span-sty">是否开票</div>
<el-form-item><span class="addinputInfo">{{ formobj.isInvoicing == '1' ? '是' : formobj.isInvoicing == '0' ? '否' : '' }}</span></el-form-item>
@ -108,29 +108,38 @@
<el-form-item><span class="addinputInfo">{{ formobj.profit }}</span></el-form-item>
</el-col>
</el-row>
<div v-if="formobj.sitemVos.length > 0">
<div class="title">维修项目</div>
<el-table :key="serviceKey" :data="formobj.sitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="200" />
<el-table-column prop="sitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
</div>
<div class="title">维修项目</div>
<el-table :key="serviceKey" :data="formobj.sitemVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column prop="serviceItem" label="维修项目" align="center" width="200" />
<el-table-column prop="serviceType" label="工种" align="center" width="150" />
<el-table-column prop="hourPrice" label="工时单价" align="center" width="150" />
<el-table-column prop="hours" label="工时数" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="sitemReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="sitemSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="sitemCost" label="成本小计" align="center" width="150" />
<el-table-column prop="sitemPrint" label="利润额" align="center" width="150" />
<el-table-column prop="repairerName" label="维修技师" align="center" width="200" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">商品</div>
<el-table :key="tableKey" :data="formobj.goodsDetailsVos" :index="index" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="index + 1" align="center" />
<el-table-column prop="goodsID" label="商品ID" align="center" width="200" />
<el-table-column prop="goodsSpuName" label="商品名称" width="100" align="center" />
<el-table-column prop="goodsSkuCode" label="图号" width="100" align="center" />
<el-table-column prop="count" label="数量" align="center" width="100" />
<el-table-column prop="price" label="销售价" align="center" width="150" />
<el-table-column prop="goodsReceivableAmount" label="应收金额" align="center" width="150" />
<el-table-column prop="discount" label="折扣" align="center" width="100" />
<el-table-column prop="discountAmount" label="优惠" align="center" width="150" />
<el-table-column prop="goodsSettleAmount" label="结算金额" align="center" width="150" />
<el-table-column prop="goodsCost" label="成本小计" align="center" width="150" />
<el-table-column prop="goodsPrint" label="利润额" align="center" width="150" />
<el-table-column prop="partsSellers" label="配件销售人" align="center" min-width="150" />
<el-table-column prop="remarks" label="备注" align="center" min-width="300" />
</el-table>
<div class="title">附加项目</div>
@ -144,7 +153,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.outCost }}</span>
<span>利润额{{ formobj.outPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.outRemarks }}</span></el-form-item>
</el-col>
@ -159,7 +177,16 @@
</div>
</el-form-item>
</el-col>
<el-col :span="16">
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.subsidyCost }}</span>
<span>利润额{{ formobj.subsidyPrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.subsidyRemarks }}</span></el-form-item>
</el-col>
@ -175,10 +202,19 @@
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">成本</div>
<el-form-item>
<div style="display: flex;flex-direction: row;justify-content: space-between;align-items: center">
<span class="addinputInfo">{{ formobj.rescueCost }}</span>
<span>利润额{{ formobj.rescuePrint }}</span>
</div>
</el-form-item>
</el-col>
<el-col :span="4">
<div class="span-sty">备注</div>
<el-form-item><span class="addinputInfo">{{ formobj.rescueRemarks }}</span></el-form-item>
</el-col>
<el-col :span="8">
<el-col :span="4">
<el-form-item>
<div style="display: flex;flex-direction: column;justify-content:flex-start;align-items: flex-start;">
<el-button type="text" v-for="(item, index) in formobj.fileName" :key="index" @click="handleOpen(item.url)">{{ item.name }}</el-button>
@ -255,12 +291,18 @@ export default {
aitemVos: [],
outAmount: '',
outKPAmount: '',
outCost: '',
outPrint: '',
outRemarks: '',
subsidyAmount: '',
subsidyKPAmount: '',
subsidyCost: '',
subsidyPrint: '',
subsidyRemarks: '',
rescueAmount: '',
rescueKPAmount: '',
rescueCost: '',
rescuePrint: '',
rescueRemarks: '',
fileName: [],
taskId: '',
@ -306,7 +348,7 @@ export default {
},
methods: {
showInfo(sid) {
this.viewTitle = '结算申请详情'
this.viewTitle = '维修单结算申请详情'
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})

7
yxt-as/src/main/java/com/yxt/anrui/as/api/asbillsettelapply/AsBillSettelApplyDetailsVo.java

@ -240,5 +240,10 @@ public class AsBillSettelApplyDetailsVo implements Vo {
private String waitorName;
private String procInsId;
private String outCost; //外出成本
private String outPrint; //外出利润额
private String subsidyCost; //厂家补助成本
private String subsidyPrint; //厂家补助利润额
private String rescueCost; //施救费成本
private String rescuePrint; //施救费利润额
}

3
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbillsettelapply/AsBillSettelApplyService.java

@ -284,6 +284,9 @@ public class AsBillSettelApplyService extends MybatisBaseService<AsBillSettelApp
vo.setSubject(data.getSubject());
vo.setIsGoOut(data.getIsGoOut());
vo.setIsGoOut2(data.getIsGoOut2());
if (StringUtils.isNotBlank(data.getDiscountAmount())) {
vo.setDiscountAmount(data.getDiscountAmount());
}
if (StringUtils.isNotBlank(data.getMobile())) {
vo.setMobile(data.getMobile());
}

12
yxt-as/src/main/java/com/yxt/anrui/as/biz/asbusrepairbill/AsBusrepairBillService.java

@ -320,8 +320,8 @@ public class AsBusrepairBillService extends MybatisBaseService<AsBusrepairBillMa
spec.setTaxPrice(new BigDecimal(dto.getRescueKPAmount()));
}
spec.setCount(1);
spec.setCost(new BigDecimal(dto.getRescueAmount()));
spec.setCostTotal(new BigDecimal(dto.getRescueAmount()));
// spec.setCost(new BigDecimal(dto.getRescueAmount()));
// spec.setCostTotal(new BigDecimal(dto.getRescueAmount()));
spec.setBillBusTypeKey("003");
spec.setBillBusTypeValue("附加项目");
asBusrepairBillAitemspecService.insert(spec);
@ -339,8 +339,8 @@ public class AsBusrepairBillService extends MybatisBaseService<AsBusrepairBillMa
spec.setTaxPrice(new BigDecimal(dto.getSubsidyKPAmount()));
}
spec.setCount(1);
spec.setCost(new BigDecimal(dto.getSubsidyAmount()));
spec.setCostTotal(new BigDecimal(dto.getSubsidyAmount()));
// spec.setCost(new BigDecimal(dto.getSubsidyAmount()));
// spec.setCostTotal(new BigDecimal(dto.getSubsidyAmount()));
spec.setBillBusTypeKey("003");
spec.setBillBusTypeValue("附加项目");
asBusrepairBillAitemspecService.insert(spec);
@ -358,8 +358,8 @@ public class AsBusrepairBillService extends MybatisBaseService<AsBusrepairBillMa
spec.setTaxPrice(new BigDecimal(dto.getOutKPAmount()));
}
spec.setCount(1);
spec.setCost(new BigDecimal(dto.getOutAmount()));
spec.setCostTotal(new BigDecimal(dto.getOutAmount()));
// spec.setCost(new BigDecimal(dto.getOutAmount()));
// spec.setCostTotal(new BigDecimal(dto.getOutAmount()));
spec.setBillBusTypeKey("003");
spec.setBillBusTypeValue("附加项目");
asBusrepairBillAitemspecService.insert(spec);

21
yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/base/WmsWarehouseInfoRest.java

@ -30,6 +30,7 @@ public class WmsWarehouseInfoRest {
public ResultBean<PagerVo<WmsWarehouseInfoVo>> listPage(@RequestBody PagerQuery<WmsWarehouseInfoQuery> pq) {
return wmsWarehouseService.listPage(pq);
}
@ApiOperation("查询所有的仓库")
@PostMapping("/listAll")
public ResultBean<List<WmsWarehouseInfo>> listAll(@RequestBody OrgPathQuery query) {
@ -56,20 +57,21 @@ public class WmsWarehouseInfoRest {
@ApiOperation("根据sid批量删除")
@DeleteMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
public ResultBean delBySids(@RequestBody String[] sids) {
ResultBean rb = ResultBean.fireFail();
wmsWarehouseService.delAll(sids);
return rb.success();
}
@ApiOperation("更改可用状态")
@GetMapping("/updateStatus/{sid}/{state}")
public ResultBean updateIsEnable(@PathVariable("sid") String sid,@PathVariable("state")String state) {
return wmsWarehouseService.updateIsEnable(sid,state);
public ResultBean updateIsEnable(@PathVariable("sid") String sid, @PathVariable("state") String state) {
return wmsWarehouseService.updateIsEnable(sid, state);
}
@ApiOperation("查询所有仓库")
@GetMapping("/selectAll")
public ResultBean<List<WmsWarehouseInfoAllVo>> selectAll(){
public ResultBean<List<WmsWarehouseInfoAllVo>> selectAll() {
ResultBean rb = ResultBean.fireFail();
List<WmsWarehouseAreaAllVo> wmsWarehouseAreaAllVos = wmsWarehouseService.selectAll();
return rb.success().setData(wmsWarehouseAreaAllVos);
@ -78,9 +80,18 @@ public class WmsWarehouseInfoRest {
@ApiOperation("查询仓库管理员")
@GetMapping("/selMangerByRole")
public ResultBean<List<MangerVo>> selMangerByRole(@RequestParam("useOrgSid") String useOrgSid){
public ResultBean<List<MangerVo>> selMangerByRole(@RequestParam("useOrgSid") String useOrgSid) {
ResultBean rb = ResultBean.fireFail();
List<MangerVo> vos = wmsWarehouseService.selMangerByRole(useOrgSid);
return rb.success().setData(vos);
}
@ApiOperation("根据仓库类型查询所有仓库")
@GetMapping("/selectWarehouseByType")
public ResultBean<List<WmsWarehouseInfoAllVo>> selectWarehouseByType(@RequestParam("useOrgSid") String useOrgSid, @RequestParam("warehouseTypeValue") String warehouseTypeValue) {
ResultBean rb = ResultBean.fireFail();
List<WmsWarehouseInfoAllVo> wmsWarehouseInfoAllVos = wmsWarehouseService.selectWarehouseByType(useOrgSid, warehouseTypeValue);
return rb.success().setData(wmsWarehouseInfoAllVos);
}
}

5
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaMapper.xml

@ -6,12 +6,15 @@
<select id="listPage" resultType="com.yxt.wms.biz.base.wmswarehousearea.WmsWarehouseAreaVo">
select
a.*,b.warehouseName as warehouseName,c.warehouseAreaTypeName as areaTypeName,z.zoneName
a.*,b.warehouseName as warehouseName,c.warehouseAreaTypeName as areaTypeName,z.zoneName,
b.warehouseTypeValue,s.`name` as deptName,
so.`name` as createOrgName
from wms_warehouse_area a
left join wms_warehouse_info b on b.sid=a.warehouseSid
left join wms_warehouse_zone z on z.sid=a.zoneSid
left join wms_warehouse_area_type c on c.sid =a.areaTypeSid
LEFT JOIN anrui_portal.sys_organization as s ON b.useOrgSid = s.sid
LEFT JOIN anrui_portal.sys_organization as so ON b.createOrgSid = so.sid
<where>
${ew.sqlSegment}
</where>

1
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaQuery.java

@ -15,6 +15,7 @@ public class WmsWarehouseAreaQuery implements Query {
private String warehouseSid;//仓库
private String areaTypeSid;//库区类型
private String zoneSid;//区域类型
private String warehouseTypeValue;//区域类型
@ApiModelProperty("菜单路由")
private String menuUrl;

3
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaService.java

@ -95,6 +95,9 @@ public class WmsWarehouseAreaService extends MybatisBaseService<WmsWarehouseArea
if (StringUtils.isNotBlank(query.getWarehouseSid())) {
qw.eq("b.sid", query.getWarehouseSid());
}
if (StringUtils.isNotBlank(query.getWarehouseTypeValue())) {
qw.eq("b.warehouseTypeValue", query.getWarehouseTypeValue());
}
if (StringUtils.isNotBlank(query.getZoneSid())) {
qw.eq("z.sid", query.getZoneSid());
}

4
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousearea/WmsWarehouseAreaVo.java

@ -34,6 +34,8 @@ public class WmsWarehouseAreaVo implements Vo {
private String zoneName;//区域名称
private String areaTypeName;//货区类型名称
private String userSid;
private String warehouseTypeValue;
private String deptName;
private String createOrgName;
}

2
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseareatype/WmsWarehouseAreaTypeVo.java

@ -28,4 +28,6 @@ public class WmsWarehouseAreaTypeVo implements Vo {
private String createOrgSid;//创建组织sid
private String orgPath;
private String userSid;
private String deptName;
private String createOrgName;
}

3
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseinfo/WmsWarehouseInfoMapper.java

@ -33,4 +33,7 @@ public interface WmsWarehouseInfoMapper extends BaseMapper<WmsWarehouseInfo> {
List<WmsWarehouseInfo> listAll(@Param("useOrgSid") String useOrgSid);
int selectNum(@Param("billCode") String billCode);
@Select("select sid,warehouseName from wms_warehouse_info where useOrgSid =#{useOrgSid} and isDelete = 0 and usageStatus = '1' and warehouseTypeValue =#{warehouseTypeValue}")
List<WmsWarehouseInfoAllVo> selectWarehouseByType(@Param("useOrgSid")String useOrgSid, @Param("warehouseTypeValue")String warehouseTypeValue);
}

5
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseinfo/WmsWarehouseInfoMapper.xml

@ -6,10 +6,13 @@
<select id="listPage" resultType="com.yxt.wms.biz.base.wmswarehouseinfo.WmsWarehouseInfoVo">
SELECT
w.*
w.*,
s.`name` as deptName,
so.`name` as createOrgName
FROM
wms_warehouse_info as w
LEFT JOIN anrui_portal.sys_organization as s ON w.useOrgSid = s.sid
LEFT JOIN anrui_portal.sys_organization as so ON w.createOrgSid = so.sid
<where>
${ew.sqlSegment}
</where>

1
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseinfo/WmsWarehouseInfoQuery.java

@ -13,6 +13,7 @@ public class WmsWarehouseInfoQuery implements Query {
private String name;
private String code;
private String address;
private String warehouseTypeValue;
@ApiModelProperty("菜单路由")
private String menuUrl;
@ApiModelProperty("组织全路径sid")

7
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseinfo/WmsWarehouseInfoService.java

@ -102,6 +102,9 @@ public class WmsWarehouseInfoService extends MybatisBaseService<WmsWarehouseInfo
if (StringUtils.isNotBlank(query.getAddress())) {
qw.like("w.address", query.getAddress());
}
if (StringUtils.isNotBlank(query.getWarehouseTypeValue())) {
qw.eq("w.warehouseTypeValue", query.getWarehouseTypeValue());
}
qw.ne("w.isDelete", 1);
IPage<WmsWarehouseInfo> page = PagerUtil.queryToPage(pq);
IPage<WmsWarehouseInfoVo> pagging = baseMapper.listPage(page, qw);
@ -263,4 +266,8 @@ public class WmsWarehouseInfoService extends MybatisBaseService<WmsWarehouseInfo
}
return list;
}
public List<WmsWarehouseInfoAllVo> selectWarehouseByType(String useOrgSid, String warehouseTypeValue) {
return baseMapper.selectWarehouseByType(useOrgSid,warehouseTypeValue);
}
}

2
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouseinfo/WmsWarehouseInfoVo.java

@ -45,4 +45,6 @@ public class WmsWarehouseInfoVo implements Vo {
private String useOrgSid;//创建组织sid
private String createOrgSid;//创建组织sid
private List<WmsWarehouseExtendVo> wmsWarehouseExtendVos;
private String deptName;
private String createOrgName;
}

5
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackMapper.xml

@ -6,12 +6,15 @@
<select id="listPage" resultType="com.yxt.wms.biz.base.wmswarehouserack.WmsWarehouseRackVo">
select
a.*,b.areaName as locationName ,c.warehouseName as warehouseName,z.zoneName
a.*,b.areaName as locationName ,c.warehouseName as warehouseName,z.zoneName,c.warehouseTypeValue,
s.`name` as deptName,
so.`name` as createOrgName
from wms_warehouse_rack a
left join wms_warehouse_area b on b.sid =a.locationSid
left join wms_warehouse_info c on c.sid = a.warehouseSid
left join wms_warehouse_zone z on z.sid = a.zoneSid
LEFT JOIN anrui_portal.sys_organization as s ON c.useOrgSid = s.sid
LEFT JOIN anrui_portal.sys_organization as so ON c.createOrgSid = so.sid
<where>
${ew.sqlSegment}
</where>

1
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackQuery.java

@ -15,6 +15,7 @@ public class WmsWarehouseRackQuery implements Query {
private String warehouseSid;//仓库
private String areaTypeSid;//库区类型
private String zoneSid;//区域类型
private String warehouseTypeValue;
@ApiModelProperty("菜单路由")
private String menuUrl;
@ApiModelProperty("组织全路径sid")

4
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackService.java

@ -97,6 +97,10 @@ public class WmsWarehouseRackService extends MybatisBaseService<WmsWarehouseRack
if (StringUtils.isNotBlank(query.getZoneSid())) {
qw.eq("z.sid", query.getZoneSid());
}
if (StringUtils.isNotBlank(query.getWarehouseTypeValue())) {
qw.eq("c.warehouseTypeValue", query.getWarehouseTypeValue());
}
qw.ne("a.isDelete", "1");
IPage<WmsWarehouseRack> page = PagerUtil.queryToPage(pq);
IPage<WmsWarehouseRackVo> pagging = baseMapper.listPage(page, qw);

3
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehouserack/WmsWarehouseRackVo.java

@ -32,4 +32,7 @@ public class WmsWarehouseRackVo implements Vo {
private String userSid;
private String zoneSid;//区域sid
private String zoneName;//区域名称
private String warehouseTypeValue;
private String deptName;
private String createOrgName;
}

3
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousezone/WmsWarehouseZoneInitVo.java

@ -19,6 +19,5 @@ public class WmsWarehouseZoneInitVo {
private String volume;//区域面积
private String unit;//计量单位
private String userSid; //用户sid
private String warehouseTypeValue;//仓库类型
}

8
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousezone/WmsWarehouseZoneMapper.xml

@ -15,10 +15,13 @@
<select id="listPage" resultType="com.yxt.wms.biz.base.wmswarehousezone.WmsWarehouseZoneVo">
select
a.*,b.warehouseName as warehouseName
a.*,b.warehouseName as warehouseName,b.warehouseTypeValue as warehouseTypeValue,
s.`name` as deptName,
so.`name` as createOrgName
from wms_warehouse_zone a
left join wms_warehouse_info b on b.sid=a.warehouseSid
LEFT JOIN anrui_portal.sys_organization as s ON b.useOrgSid = s.sid
LEFT JOIN anrui_portal.sys_organization as so ON b.createOrgSid = so.sid
<where>
${ew.sqlSegment}
</where>
@ -53,7 +56,8 @@
<select id="initialization" resultType="com.yxt.wms.biz.base.wmswarehousezone.WmsWarehouseZoneInitVo">
select a.*,
a.createBySid as userSid,
b.warehouseName as warehouseName
b.warehouseName as warehouseName,
b.warehouseTypeValue
from wms_warehouse_zone a
left join wms_warehouse_info b on b.sid = a.warehouseSid
where a.sid = #{sid}

1
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousezone/WmsWarehouseZoneQuery.java

@ -15,6 +15,7 @@ public class WmsWarehouseZoneQuery implements Query {
private String name;//名字
private String code;//编码
private String warehouseSid;//仓库
private String warehouseTypeValue;//仓库
@ApiModelProperty("菜单路由")
private String menuUrl;

3
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousezone/WmsWarehouseZoneService.java

@ -89,6 +89,9 @@ public class WmsWarehouseZoneService extends MybatisBaseService<WmsWarehouseZone
if (StringUtils.isNotBlank(query.getWarehouseSid())) {
qw.eq("b.sid", query.getWarehouseSid());
}
if (StringUtils.isNotBlank(query.getWarehouseTypeValue())) {
qw.eq("b.warehouseTypeValue", query.getWarehouseTypeValue());
}
qw.ne("a.isDelete", "1");
IPage<WmsWarehouseZone> page = PagerUtil.queryToPage(pq);
IPage<WmsWarehouseZoneVo> pagging = baseMapper.listPage(page, qw);

3
yxt-wms-biz/src/main/java/com/yxt/wms/biz/base/wmswarehousezone/WmsWarehouseZoneVo.java

@ -23,4 +23,7 @@ public class WmsWarehouseZoneVo implements Vo {
private String volume;//区域面积
private String unit;//计量单位
private String warehouseName;//仓库名称
private String warehouseTypeValue;//仓库类型
private String deptName;
private String createOrgName;
}

Loading…
Cancel
Save