Browse Source

Merge remote-tracking branch 'origin/master'

zhanglei
God 11 months ago
parent
commit
0f2a44b334
  1. 94
      anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentplandetails/LoanRepaymentPlanDetailsMapper.xml
  2. 28
      yxt-as-ui/src/api/Common/dictcommons.js
  3. 6
      yxt-as-ui/src/router/index.js
  4. 17
      yxt-as-ui/src/views/basicinformation/profession/profession.vue
  5. 17
      yxt-as-ui/src/views/basicinformation/subjects/subjects.vue
  6. 19
      yxt-as-ui/src/views/basicinformation/team/team.vue
  7. 8
      yxt-as-ui/src/views/goods/brands/brandsAdd.vue
  8. 9
      yxt-as-ui/src/views/goods/category/categoryAdd.vue
  9. 2
      yxt-as-ui/src/views/goods/category/index.vue
  10. 11
      yxt-as-ui/src/views/goods/factory/factoryAdd.vue
  11. 11
      yxt-as-ui/src/views/goods/goods/goodsAdd.vue
  12. 10
      yxt-as-ui/src/views/goods/goods/goodsAdd2.vue
  13. 2
      yxt-as-ui/src/views/goods/goods/goodsInfo2.vue
  14. 11
      yxt-as-ui/src/views/goods/unit/unitAdd.vue
  15. 7
      yxt-as-ui/src/views/storage/deliveryNotice/receiptAdd.vue
  16. 8
      yxt-as-ui/src/views/storage/maintenanceInOrOutBound/index.vue
  17. 21
      yxt-as-ui/src/views/storage/outStorage/index.vue
  18. 411
      yxt-as-ui/src/views/storage/outStorage/outStorageAdd.vue
  19. 164
      yxt-as-ui/src/views/storage/outStorage/relation/chooseproducts.vue
  20. 12
      yxt-as-ui/src/views/storage/receivingGoods/receivingGoodsAdd.vue
  21. 7
      yxt-as-ui/src/views/storage/receivingGoods/upShelfAddRecord.vue
  22. 8
      yxt-as-ui/src/views/storage/upShelf/upShelfAdd.vue
  23. 11
      yxt-as-ui/src/views/warehouse/goodsShelves/goodsShelvesAdd.vue
  24. 11
      yxt-as-ui/src/views/warehouse/warehouse/warehouseAdd.vue
  25. 11
      yxt-as-ui/src/views/warehouse/warehouseArea/warehouseAreaAdd.vue
  26. 11
      yxt-as-ui/src/views/warehouse/warehouseAreaType/warehouseAreaTypeAdd.vue

94
anrui-riskcenter/anrui-riskcenter-biz/src/main/java/com/yxt/anrui/riskcenter/biz/loanrepaymentplandetails/LoanRepaymentPlanDetailsMapper.xml

@ -77,7 +77,7 @@
lrpd.customer,
lrpd.borrowerName,
(
lrpd.`dueMoney` - SUM (IFNULL(lrh.actualMoney, 0))
lrpd.`dueMoney` - SUM(IFNULL(lrh.actualMoney, 0))
) AS notRepaidMoney
FROM
`loan_repayment_plan_details` lrpd
@ -433,16 +433,13 @@
AND s.isDelete = '0'
</select>
<select id="getOtherBankName" resultType="java.lang.String">
SELECT
b.bankShortName
FROM
loan_repayment_plan_details AS p
LEFT JOIN loan_solutions AS s ON p.salesOrderSid = s.salesOrderSid
LEFT JOIN loan_solutions_otherpolicy AS o ON s.sid = o.solutionsSid
LEFT JOIN loan_fin_otherpolicy AS po ON po.sid = o.otherPolicySid
LEFT JOIN loan_fin_bank AS b ON po.bankSid = b.sid
WHERE
p.sid =#{sid}
SELECT b.bankShortName
FROM loan_repayment_plan_details AS p
LEFT JOIN loan_solutions AS s ON p.salesOrderSid = s.salesOrderSid
LEFT JOIN loan_solutions_otherpolicy AS o ON s.sid = o.solutionsSid
LEFT JOIN loan_fin_otherpolicy AS po ON po.sid = o.otherPolicySid
LEFT JOIN loan_fin_bank AS b ON po.bankSid = b.sid
WHERE p.sid = #{sid}
AND s.isDelete = '0'
</select>
<select id="checkOverDue"
@ -669,38 +666,30 @@
</select>
<select id="pushFund"
resultType="com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.LoanPlanDetailsVoForFundVoucher">
SELECT
c.*,
( c.reveivableMoney - c.fund ) AS duePushMoney
FROM
(
SELECT
b.*
FROM
(
SELECT
a.*,
IFNULL(( SELECT SUM( fund ) FROM loan_push_fund_history AS ph WHERE ph.busVinSid = #{busVinSid} ), 0 ) AS fund
FROM
(
SELECT
IFNULL( SUM( jr.reveivableMoney ), 0 ) AS reveivableMoney
FROM
anrui_fin.fin_uncollected_receivables_detailed_jr AS jr
LEFT JOIN loan_repayment_plan_details AS p ON p.sid = jr.busSid
WHERE
jr.payCostTitleKey = '006'
AND p.busVinSid = #{busVinSid}
) AS a
) AS b
WHERE
b.reveivableMoney - b.fund > 0
) c
SELECT c.*,
(c.reveivableMoney - c.fund) AS duePushMoney
FROM (
SELECT b.*
FROM (
SELECT a.*,
IFNULL((SELECT SUM(fund)
FROM loan_push_fund_history AS ph
WHERE ph.busVinSid = #{busVinSid}), 0) AS fund
FROM (
SELECT IFNULL(SUM(jr.reveivableMoney), 0) AS reveivableMoney
FROM anrui_fin.fin_uncollected_receivables_detailed_jr AS jr
LEFT JOIN loan_repayment_plan_details AS p ON p.sid = jr.busSid
WHERE jr.payCostTitleKey = '006'
AND p.busVinSid = #{busVinSid}
) AS a
) AS b
WHERE b.reveivableMoney - b.fund > 0
) c
</select>
<select id="selPushLaterVoucherOnBuckle"
resultType="com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.LoanPlanDetailsVoForLateVoucher">
SELECT b.loanContractNo,
b.sid AS planSid,
b.sid AS planSid,
b.scheduleSid,
CASE
WHEN (b.outstandingMoney + b.bankBeInter + b.fund) >
@ -741,8 +730,8 @@
t.repaidMoney,
t.outstandingMoney,
IFNULL(pd.paymentInterest, 0) AS bankBeInter,
pd.overdue AS dueOverdue,
pd.updateTime AS updateDate
pd.overdue AS dueOverdue,
pd.updateTime AS updateDate
FROM loan_repayment_plan_details AS pd
LEFT JOIN anrui_buscenter.bus_sales_order AS s ON s.sid = pd.salesOrderSid
LEFT JOIN (
@ -783,21 +772,18 @@
</select>
<select id="fetchMainBankByBusVinSid"
resultType="com.yxt.anrui.riskcenter.api.loanrepaymentplandetails.LoanRepaymentPlanDetails">
select * from loan_repayment_plan_details where busVinSid =#{busVinSid} and policyOrOther = '0' limit 1
select *
from loan_repayment_plan_details
where busVinSid = #{busVinSid}
and policyOrOther = '0' limit 1
</select>
<select id="fetchCwDeptCodeByBusVinSid" resultType="java.lang.String">
SELECT
s.cwDeptNo
FROM
loan_repayment_schedule AS s
WHERE
s.sid = (
SELECT
p.scheduleSid
FROM
loan_repayment_plan_details AS p
WHERE
p.busVinSid = #{busVinSid}
SELECT s.cwDeptNo
FROM loan_repayment_schedule AS s
WHERE s.sid = (
SELECT p.scheduleSid
FROM loan_repayment_plan_details AS p
WHERE p.busVinSid = #{busVinSid}
LIMIT 1
)
</select>

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

@ -40,7 +40,9 @@ export function selectHaveMessage(data) {
url: '/portal/v1/sysuser/selectHaveMessage ',
method: 'post',
data: data,
headers: { 'Content-Type': 'application/json' }
headers: {
'Content-Type': 'application/json'
}
})
}
@ -50,7 +52,9 @@ export function getButtonPermissions(data) {
url: '/portal/v1/sysfunction/getButtonPermissions',
method: 'post',
data: data,
headers: { 'Content-Type': 'application/json' }
headers: {
'Content-Type': 'application/json'
}
})
}
@ -96,7 +100,9 @@ export function customerListPage(params) {
url: '/yxtcrm/apiadmin/v1/crmcustomer/customerListPage',
method: 'post',
data: params,
headers: { 'Content-Type': 'application/json' }
headers: {
'Content-Type': 'application/json'
}
})
}
@ -139,6 +145,20 @@ export function chooseproducts(params) {
url: '/yxtbase/apiadmin/base/basegoodssku/getGoodsListPage',
method: 'post',
data: params,
headers: { 'Content-Type': 'application/json' }
headers: {
'Content-Type': 'application/json'
}
})
}
// 查询分页列表 -- 商品列表
export function getInventoryList(params) {
return request({
url: '/wms/apiadmin/WmsOutBill/getInventoryList',
method: 'post',
data: params,
headers: {
'Content-Type': 'application/json'
}
})
}

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

@ -225,6 +225,12 @@ export const constantRoutes = [{
name: 'InventoryRefer',
meta: { title: '出入库查询', noCache: true }
},
{
path: '/maintenanceInOrOutBound/index',
component: () => import('@/views/storage/maintenanceInOrOutBound/index.vue'),
name: 'MaintenanceInOrOutBound',
meta: { title: '维修出入库查询', noCache: true }
},
{
path: '/stocktaking/index',
component: () => import('@/views/storage/stocktaking/index'),

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

@ -251,6 +251,9 @@ export default {
},
toAdd() {
this.dialogVisible = true
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
getNumber(val, limit) {
val = val.replace(/[^0-9.]/g, '') //
@ -285,11 +288,15 @@ export default {
handleConfirm() {
this.formobj.createBySid = window.sessionStorage.getItem('userSid')
this.formobj.orgPath = window.sessionStorage.getItem('defaultOrgPath')
req.saveOrUpdate(this.formobj).then((resp) => {
if (resp.success) {
this.$message({ showClose: true, type: 'success', message: '保存成功' })
this.getList()
this.handleClose()
this.$refs['form_obj'].validate((valid) => {
if (valid) {
req.saveOrUpdate(this.formobj).then((resp) => {
if (resp.success) {
this.$message({ showClose: true, type: 'success', message: '保存成功' })
this.getList()
this.handleClose()
}
})
}
})
},

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

@ -245,6 +245,9 @@ export default {
},
toAdd() {
this.dialogVisible = true
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
getNumber(val, limit) {
val = val.replace(/[^0-9.]/g, '') //
@ -279,11 +282,15 @@ export default {
handleConfirm() {
this.formobj.createBySid = window.sessionStorage.getItem('userSid')
this.formobj.orgPath = window.sessionStorage.getItem('defaultOrgPath')
req.saveOrUpdate(this.formobj).then((resp) => {
if (resp.success) {
this.$message({ showClose: true, type: 'success', message: '保存成功' })
this.getList()
this.handleClose()
this.$refs['form_obj'].validate((valid) => {
if (valid) {
req.saveOrUpdate(this.formobj).then((resp) => {
if (resp.success) {
this.$message({ showClose: true, type: 'success', message: '保存成功' })
this.getList()
this.handleClose()
}
})
}
})
},

19
yxt-as-ui/src/views/basicinformation/team/team.vue

@ -167,7 +167,7 @@ export default {
case 'toAdd':
this.toAdd()
break
case 'toEdit:
case 'toEdit':
this.toEdit()
break
case 'doDel':
@ -230,6 +230,9 @@ export default {
},
toAdd() {
this.dialogVisible = true
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
getNumber(val, limit) {
val = val.replace(/[^0-9.]/g, '') //
@ -264,11 +267,15 @@ export default {
handleConfirm() {
this.formobj.createBySid = window.sessionStorage.getItem('userSid')
this.formobj.orgPath = window.sessionStorage.getItem('defaultOrgPath')
req.saveOrUpdate(this.formobj).then((resp) => {
if (resp.success) {
this.$message({ showClose: true, type: 'success', message: '保存成功' })
this.getList()
this.handleClose()
this.$refs['form_obj'].validate((valid) => {
if (valid) {
req.saveOrUpdate(this.formobj).then((resp) => {
if (resp.success) {
this.$message({ showClose: true, type: 'success', message: '保存成功' })
this.getList()
this.handleClose()
}
})
}
})
},

8
yxt-as-ui/src/views/goods/brands/brandsAdd.vue

@ -240,8 +240,16 @@
showAdd() {
console.log("this.imgList", this.imgList)
this.hideUploadBtn = this.imgList.length != 0
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.initBrands(row.sid)
.then(resp => {
if (resp.success) {

9
yxt-as-ui/src/views/goods/category/categoryAdd.vue

@ -80,8 +80,8 @@
<el-row>
<el-col :span="8">
<div class="span-sty">排序</div>
<el-form-item>
<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-form-item>
@ -197,6 +197,11 @@
message: '请选择出库规则',
trigger: 'change'
}],
sortNo: [{
required: true,
message: '排序不能为空',
trigger: 'blur'
}],
}
}
},

2
yxt-as-ui/src/views/goods/category/index.vue

@ -69,7 +69,7 @@
<el-table-column prop="pname" label="上级类别" align="center" />
<el-table-column prop="percentageRate" label="提成比例" align="center" />
<el-table-column prop="percentageAmount" label="提成金额" align="center" />
<el-table-column prop="outstockRulevalue" label="出库规则" align="center" />
<el-table-column prop="outStockRuleValue" label="出库规则" align="center" />
</el-table>
</div>
<!-- End 项目列表 -->

11
yxt-as-ui/src/views/goods/factory/factoryAdd.vue

@ -187,8 +187,17 @@
}
this.$emit('doback')
},
showAdd() {},
showAdd() {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.initFacturer(row.sid)
.then(resp => {
if (resp.success) {

11
yxt-as-ui/src/views/goods/goods/goodsAdd.vue

@ -886,11 +886,20 @@
console.log('>>>>>>>>>showAdd', sid)
this.formobj.sid = sid
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
indexMethod(index) {
return index + 1
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.initGoods(row.sid)
.then(resp => {
if (resp.success) {
@ -900,6 +909,8 @@
.catch(e => {
this.formobj = row
})
},
selectBrandChange(val) {
const choose = this.brandList.filter((item) => item.sid == val)

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

@ -433,11 +433,21 @@
// console.log('>>>>>>>>>showAdd', sid)
// this.formobj.sid = sid
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
indexMethod(index) {
return index + 1
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.initGoods(row.sid)
.then(resp => {
if (resp.success) {

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

@ -35,7 +35,7 @@
</el-col>
<el-col :span="6">
<div class="span-sty">商品条形码</div>
<div class="span-sty">条形码</div>
<el-form-item>
<span class="addinputInfo">{{formobj.barCode}}</span>
</el-form-item>

11
yxt-as-ui/src/views/goods/unit/unitAdd.vue

@ -126,8 +126,17 @@
}
this.$emit('doback')
},
showAdd() {},
showAdd() {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.initUnits(row.sid)
.then(resp => {
if (resp.success) {

7
yxt-as-ui/src/views/storage/deliveryNotice/receiptAdd.vue

@ -625,9 +625,16 @@
},
showAdd() {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.getWarehouseList()
this.getsupplierLust()
// this.getOrgPathSid()

8
yxt-as-ui/src/views/storage/maintenanceInOrOutBound/index.vue

@ -0,0 +1,8 @@
<template>
</template>
<script>
</script>
<style>
</style>

21
yxt-as-ui/src/views/storage/outStorage/index.vue

@ -20,7 +20,7 @@
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;">
</el-date-picker>
</el-form-item>
<el-form-item label="外部单号">
<el-form-item label="来源单号">
<el-input v-model="queryParams.params.sourceBillNo" placeholder="" clearable />
</el-form-item>
<el-form-item label="业务类型">
@ -61,7 +61,7 @@
<el-table-column prop="billNo" label="单据编号" align="center" />
<el-table-column prop="createTime" label="单据日期" align="center" />
<el-table-column prop="createByName" label="制单人" align="center" />
<el-table-column prop="sourceBillNo" label="外部单号" align="center" />
<el-table-column prop="sourceBillNo" label="来源单号" align="center" />
<el-table-column prop="busTypeValue" label="业务类型" align="center" />
<el-table-column prop="billState" label="单据状态" align="center" />
</el-table>
@ -107,12 +107,13 @@
tableLoading: false,
dataList: [],
btnList: [{
type: 'danger',
type: 'primary',
size: 'small',
icon: 'del',
btnKey: 'doDel',
btnLabel: '删除'
icon: 'plus',
btnKey: 'toAdd',
btnLabel: '新增'
},
{
type: 'primary',
size: 'small',
@ -121,11 +122,11 @@
btnLabel: '编辑'
},
{
type: 'primary',
type: 'danger',
size: 'small',
icon: 'plus',
btnKey: 'toAdd',
btnLabel: '新增'
icon: 'del',
btnKey: 'doDel',
btnLabel: '删除'
},
{
type: 'info',

411
yxt-as-ui/src/views/storage/outStorage/outStorageAdd.vue

@ -1,80 +1,87 @@
<template>
<div>
<div class="tab-header webtop">
<!-- 标题 -->
<div>{{title}}出库单</div>
<!-- start 添加修改按钮 -->
<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>
<!-- end 添加修改按钮 -->
<!-- end 详情按钮 -->
</div>
<div class="listconadd">
<el-form ref="form_obj" :model="formobj" class="formaddcopy02">
<div class="title">
<div>基础信息</div>
</div>
<el-row class="first_row">
<el-col :span="8">
<div class="span-sty">单据编号</div>
<el-form-item><span class="addinputInfo">{{ formobj.billNo }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">制单人</div>
<el-form-item><span class="addinputInfo">{{ formobj.createByName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">单据日期</div>
<el-form-item><el-date-picker v-model="formobj.createTime" type="date" class="addinputInfo"
value-format="yyyy-MM-dd" placeholder="选择日期">
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">来源单号</div>
<el-form-item><span class="addinputInfo">{{ formobj.sourceBillNo }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">业务类型</div>
<el-form-item><el-select v-model="formobj.busTypeValue" filterable clearable placeholder="请选择"
class="addinputInfo" @change="busTypeSelect">
<el-option v-for="item in busTypeList" :key="item.sid" :label="item.name" :value="item.sid">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">单据状态</div>
<el-form-item><span class="addinputInfo">{{ formobj.billState }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">备注</div>
<el-form-item> <el-input v-model="formobj.remarks" placeholder="" class="addinputInfo" type="textarea"
:rows="4" clearable />
</el-form-item>
</el-col>
</el-row>
<div class="title titleOne">
<div>商品列表</div>
<div class="app-container">
<div v-show="viewState == 1">
<div class="tab-header webtop">
<!-- 标题 -->
<div>{{title}}出库单</div>
<!-- start 添加修改按钮 -->
<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>
<el-table v-loading="listLoading" :data="formobj.detailsList" border>
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" />
<el-table-column align="center" width="100" :render-header="commodityHeader">
<!-- end 添加修改按钮 -->
<!-- end 详情按钮 -->
</div>
<div class="listconadd">
<el-form ref="form_obj" :model="formobj" class="formaddcopy02">
<div class="title">
<div>基础信息</div>
</div>
<el-row class="first_row">
<el-col :span="8">
<div class="span-sty">单据编号</div>
<el-form-item><span class="addinputInfo addinputw">{{ formobj.billNo }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">制单人</div>
<el-form-item><span class="addinputInfo addinputw">{{ formobj.createByName }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">单据日期</div>
<el-form-item><el-date-picker v-model="formobj.createTime" type="date" class="addinputInfo addinputw"
value-format="yyyy-MM-dd" placeholder="选择日期">
</el-date-picker>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8">
<div class="span-sty">来源单号</div>
<el-form-item><span class="addinputInfo addinputw">{{ formobj.sourceBillNo }}</span></el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">业务类型</div>
<el-form-item><el-select v-model="formobj.busTypeValue" filterable clearable placeholder="请选择"
class="addinputInfo addinputw" @change="busTypeSelect">
<el-option v-for="item in busTypeList" :key="item.sid" :label="item.name" :value="item.sid">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty">单据状态</div>
<el-form-item><span class="addinputInfo addinputw">{{ formobj.billState }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<div class="span-sty">备注</div>
<el-form-item> <el-input v-model="formobj.remarks" placeholder="" class="addinputInfo addinputw"
type="textarea" :rows="4" clearable />
</el-form-item>
</el-col>
</el-row>
<div class="title titleOne">
<div>商品列表</div>
<el-button type="primary" size="small" class="btntopblueline" @click="selectProducts">选择商品</el-button>
</div>
<el-table v-loading="listLoading" :data="formobj.detailsList" border>
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" />
<el-table-column fixed label="操作" align="center" width="100">
<template slot-scope="scope">
<el-button type="danger" size="small" @click="commodityDelete(scope.$index)">删除</el-button>
</template>
</el-table-column>
<!-- <el-table-column align="center" width="100" :render-header="commodityHeader">
<template slot-scope="scope">
<i class="el-icon-delete" @click="commodityDelete(scope.$index)"></i>
</template>
@ -97,36 +104,44 @@
@input="commodityInput(scope.row.goodsSpuName)" clearable placeholder="商品名称" />
</el-popover>
</template>
</el-table-column>
<el-table-column label="商品编码" prop="goodsSkuCode" align="center" />
<el-table-column label="规格" prop="goodsSkuOwnSpec" align="center" />
<el-table-column label="单位" prop="unit" align="center" />
<el-table-column label="仓库" prop="warehouseName" align="center" />
<el-table-column label="库位" prop="warehouseRackCode" align="center" />
<el-table-column label="销售单价" prop="money" align="center" />
<el-table-column label="出库数量" align="center">
<template slot-scope="scope">
<el-input ref="focusAssumptionInput" v-model="scope.row.outCount"
@input="commodityComputeYHAndXSJE(scope.row,$event)" clearable placeholder=""
oninput="value=value.replace(/^(0+)|[^\d]+/g,'')" />
</template>
</el-table-column>
<el-table-column label="金额" prop="moneyAll" align="center" />
</el-table>
</el-form>
</el-table-column> -->
<el-table-column label="商品ID" prop="goodsID" align="center" />
<el-table-column label="商品名称" prop="goodsSpuName" align="center" />
<el-table-column label="商品编码" prop="goodsSkuCode" align="center" />
<el-table-column label="规格" prop="goodsSkuOwnSpec" align="center" />
<el-table-column label="单位" prop="unit" align="center" />
<el-table-column label="仓库" prop="warehouseName" align="center" />
<el-table-column label="库位" prop="warehouseRackCode" align="center" />
<el-table-column label="销售单价" prop="money" align="center" />
<el-table-column label="出库数量" align="center">
<template slot-scope="scope">
<el-input ref="focusAssumptionInput" v-model="scope.row.outCount"
@input="commodityComputeYHAndXSJE(scope.row,$event)" clearable placeholder=""
oninput="value=value.replace(/^(0+)|[^\d]+/g,'')" />
</template>
</el-table-column>
<el-table-column label="金额" prop="moneyAll" align="center" />
</el-table>
</el-form>
</div>
</div>
<!-- 选择商品 -->
<chooseproducts v-show="viewState == 2" ref="divSp" @backData="backData" @doback="resetState" />
</div>
</template>
<script>
import req from '@/api/storage/outStorage.js'
import chooseproducts from './relation/chooseproducts'
export default {
components: {},
components: {
chooseproducts
},
data() {
return {
viewState: 1,
title: '【新增】',
listLoading: false,
submitdisabled: false,
@ -156,102 +171,136 @@
sid: "1"
}
],
// commodity
commodityKey: 1,
commodityLoading: false,
commodityQuery: {
current: 1,
size: 2,
total: 0,
params: {
name: '',
inOrg: "",
outOrg: ""
}
},
commodityData: [],
// // commodity
// commodityKey: 1,
// commodityLoading: false,
// commodityQuery: {
// current: 1,
// size: 2,
// total: 0,
// params: {
// name: '',
// inOrg: "",
// outOrg: ""
// }
// },
// commodityData: [],
isUpdata: false
}
},
created() {},
methods: {
commodityInput(value) {
this.commodityQuery.params.name = value
this.commodityLoading = true
req.getGoodsListPage(this.commodityQuery).then((response) => {
if (response.success) {
this.commodityLoading = false
this.commodityData = response.data.records
this.commodityQuery.total = response.data.total
} else {
this.serviceLoading = false
this.commodityData = []
this.commodityQuery.total = 0
}
})
backData(value) {
this.viewState = 1
if (value.length > 0) {
value.forEach((e) => {
this.formobj.detailsList.push({
goodSpuSid: e.goodsSpuSid,
goodsSpuName: e.goodsSpuName,
goodsSkuSid: e.goodsSkuSid,
goodsSkuTitle: e.goodsSkuTitle,
goodsSkuCode: e.goodsSkuCode,
goodsSkuOwnSpec: e.goodsSkuOwnSpec,
unit: e.unit,
warehouseSid: e.warehouseSid,
warehouseName: e.warehouseName,
warehouseRackSid: e.warehouseRackSid,
warehouseRackCode: e.warehouseRackCode,
money: e.money,
moneyAll: '',
outCount: '',
inventorySid: e.inventorySid, // sid
})
})
}
},
commodityDelete(index) {
this.formobj.detailsList.splice(index, 1)
resetState() {
this.viewState = 1
},
commodityCurrentChange(value, row) {
console.log("commodityCurrentChange》》》》", value)
console.log("commodityCurrentChange》》》》", row)
row.inventorySid = value.inventorySid
row.goodSpuSid = value.goodSpuSid
row.goodsSkuSid = value.goodsSkuSid
row.goodsSkuTitle = value.goodsSkuTitle
row.goodsSpuName = value.goodsSpuName
row.goodsSkuCode = value.goodsSkuCode
row.goodsSkuOwnSpec = value.goodsSkuOwnSpec
row.unit = value.unit
row.warehouseSid = value.warehouseSid
row.warehouseName = value.warehouseName
row.warehouseRackSid = value.warehouseRackSid
row.warehouseRackCode = value.warehouseRackCode
row.money = value.money
row.moneyAll = 0
row.outCount = 0
document.body.click()
selectProducts() {
this.viewState = 2
const aa = []
this.$refs['divSp'].showData(aa, this.formobj.createOrgSid)
},
//
commodityHeader(h, {
column
}) {
return h(
'div',
[
h('span', column.label),
h('i', {
class: 'add-btn-icon el-icon-plus',
style: 'color: red;font-size:20px',
on: {
click: this.commodityAdd //
}
})
]
)
},
commodityAdd() {
this.formobj.detailsList.push({
"inventorySid": "",
"goodSpuSid": "",
"goodsSpuName": "",
"goodsSkuSid": "",
"goodsSkuTitle": "",
"goodsSkuCode": "",
"goodsSkuOwnSpec": "",
"unit": "",
"warehouseSid": "",
"warehouseName": "",
"warehouseRackSid": "",
"warehouseRackCode": "",
"money": 0,
"moneyAll": 0,
"outCount": 0
})
},
// commodityInput(value) {
// this.commodityQuery.params.name = value
// this.commodityLoading = true
// req.getGoodsListPage(this.commodityQuery).then((response) => {
// if (response.success) {
// this.commodityLoading = false
// this.commodityData = response.data.records
// this.commodityQuery.total = response.data.total
// } else {
// this.serviceLoading = false
// this.commodityData = []
// this.commodityQuery.total = 0
// }
// })
// },
// commodityDelete(index) {
// this.formobj.detailsList.splice(index, 1)
// },
// commodityCurrentChange(value, row) {
// console.log("commodityCurrentChange", value)
// console.log("commodityCurrentChange", row)
// row.inventorySid = value.inventorySid
// row.goodSpuSid = value.goodSpuSid
// row.goodsSkuSid = value.goodsSkuSid
// row.goodsSkuTitle = value.goodsSkuTitle
// row.goodsSpuName = value.goodsSpuName
// row.goodsSkuCode = value.goodsSkuCode
// row.goodsSkuOwnSpec = value.goodsSkuOwnSpec
// row.unit = value.unit
// row.warehouseSid = value.warehouseSid
// row.warehouseName = value.warehouseName
// row.warehouseRackSid = value.warehouseRackSid
// row.warehouseRackCode = value.warehouseRackCode
// row.money = value.money
// row.moneyAll = 0
// row.outCount = 0
// document.body.click()
// },
// //
// commodityHeader(h, {
// column
// }) {
// return h(
// 'div',
// [
// h('span', column.label),
// h('i', {
// class: 'add-btn-icon el-icon-plus',
// style: 'color: red;font-size:20px',
// on: {
// click: this.commodityAdd //
// }
// })
// ]
// )
// },
// commodityAdd() {
// this.formobj.detailsList.push({
// "inventorySid": "",
// "goodSpuSid": "",
// "goodsSpuName": "",
// "goodsSkuSid": "",
// "goodsSkuTitle": "",
// "goodsSkuCode": "",
// "goodsSkuOwnSpec": "",
// "unit": "",
// "warehouseSid": "",
// "warehouseName": "",
// "warehouseRackSid": "",
// "warehouseRackCode": "",
// "money": 0,
// "moneyAll": 0,
// "outCount": 0
// })
// },
indexMethod(index) {
return Number(index) + 1
},
@ -437,7 +486,7 @@
width: 130px !important;
}
.addinputInfo {
.addinputInfo addinputw {
margin-left: 120px !important;
}

164
yxt-as-ui/src/views/storage/outStorage/relation/chooseproducts.vue

@ -0,0 +1,164 @@
<template>
<div class="app-container">
<div>
<div class="tab-header webtop">
<div>选择商品</div>
<div>
<el-button type="primary" size="small" @click="AddUpdateReturn">确定</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
<div class="">
<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="120px" class="tab-header">
<el-form-item label="商品名称" class="searchlist">
<el-input v-model="listQuery.params.goodsSpuName" placeholder="" clearable/>
</el-form-item>
<el-form-item label="商品编码" class="searchlist">
<el-input v-model="listQuery.params.goodsSkuCode" placeholder="" clearable/>
</el-form-item>
<el-form-item label="供应商" class="searchlist">
<el-input v-model="listQuery.params.manufacturerName" placeholder="" clearable />
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" icon="el-icon-search" @click="handleFilter" size="small">查询</el-button>
<el-button type="primary" icon="el-icon-refresh" @click="handleReset" size="small">重置</el-button>
</div>
</div>
</div>
<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"/>-->
</div>
<div class="">
<el-table :key="tableKey" ref="multipleTable" v-loading="listLoading" :data="list" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column width="50px" type="selection" align="center"/>
<el-table-column width="80px" label="序号" type="index" :index="indexMethod" align="center"/>
<el-table-column prop="goodsSpuName" label="商品名称" align="center" />
<el-table-column prop="goodsSkuCode" label="商品编码" align="center" />
<el-table-column prop="indexes" label="规格" align="center" />
<el-table-column prop="goodsUnitName" label="单位" align="center" />
<el-table-column prop="manufacturerName" label="供应商" align="center" />
</el-table>
</div>
<div class="pages">
<div class="tit"/>
<!-- 翻页 -->
<Pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
</div>
</div>
</div>
</template>
<script>
import Pagination from '@/components/pagination'
import { getInventoryList } from '@/api/Common/dictcommons'
export default {
name: 'SelectVehicle',
components: {
Pagination
},
data() {
return {
isSearchShow: false,
searchxianshitit: '隐藏查询条件',
tableKey: 0,
sids: [],
list: [],
number: '',
listLoading: false,
listQuery: {
current: 1,
size: 5,
params: {
createOrgSid: '',
goodsSpuName: '',
goodsSkuCode: '',
manufacturerName: ''
},
total: 0
}
}
},
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
//
getList() {
this.listLoading = true
getInventoryList(this.listQuery).then((response) => {
this.listLoading = false
if (response.success) {
this.listQuery.total = response.data.total
this.list = response.data.records
}
})
},
//
handleFilter() {
this.listQuery.current = 1
this.getList()
},
//
handleReset() {
this.listQuery.current = 1
this.listQuery.size = 5
this.listQuery.total = 0
this.listQuery.params.goodsSpuName = ''
this.listQuery.params.goodsSkuCode = ''
this.listQuery.params.manufacturerName = ''
this.getList()
},
handleSelectionChange(row) {
this.sids = row
},
showData(value, createOrgSid) {
// const aa = []
// if (value.length > 0) {
// for (var i = 0; i < value.length; i++) {
// aa.push(value[i].saleVehSid)
// }
// this.listQuery.params.saleVehSids = aa
// } else {
// this.listQuery.params.saleVehSids = []
// }``
this.listQuery.params.createOrgSid = createOrgSid
this.listQuery.current = 1
this.listQuery.size = 5
this.listQuery.total = 0
this.getList()
},
//
AddUpdateReturn() {
if (this.sids.length > 0) {
this.$emit('backData', this.sids)
} else {
this.$notify({ title: '提示', message: '请至少选择一条记录进行操作', type: 'error', duration: 2000 })
}
},
//
handleReturn() {
this.$emit('doback')
}
}
}
</script>
<style scoped>
</style>

12
yxt-as-ui/src/views/storage/receivingGoods/receivingGoodsAdd.vue

@ -578,6 +578,12 @@
this.getsupplierLust()
this.getWarehouseList()
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
showEdit(row) {
this.title = "【修改】"
@ -585,6 +591,12 @@
this.getsupplierLust()
this.getWarehouseList()
console.log("showEdit", this.isUpdata);
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
var params = {
sid: row.sid
}

7
yxt-as-ui/src/views/storage/receivingGoods/upShelfAddRecord.vue

@ -277,9 +277,16 @@
},
showAdd() {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.getWarehouseList()
this.getAllOrgper()
this.getOrgPathSid()

8
yxt-as-ui/src/views/storage/upShelf/upShelfAdd.vue

@ -287,8 +287,16 @@
this.title = "【新增】"
this.getWarehouseList()
this.getAllOrgper()
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.getWarehouseList()
this.getAllOrgper()
this.title = "【修改】"

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

@ -280,8 +280,17 @@
}
this.$emit('doback')
},
showAdd() {},
showAdd() {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.initGoodsShelves(row.sid)
.then(resp => {
if (resp.success) {

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

@ -305,8 +305,17 @@
}
this.$emit('doback')
},
showAdd() {},
showAdd() {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.initWarehouse(row.sid)
.then(resp => {
if (resp.success) {

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

@ -291,8 +291,17 @@
}
this.$emit('doback')
},
showAdd() {},
showAdd() {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.initWarehousearea(row.sid)
.then(resp => {
if (resp.success) {

11
yxt-as-ui/src/views/warehouse/warehouseAreaType/warehouseAreaTypeAdd.vue

@ -131,8 +131,17 @@
}
this.$emit('doback')
},
showAdd() {},
showAdd() {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
},
showEdit(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
req.initWarehousearea(row.sid)
.then(resp => {
if (resp.success) {

Loading…
Cancel
Save