Browse Source

Merge branch 'master_hella' of http://dev.ccwin-in.com:3000/sfms3.0/sfms3.0-ui into master_hella

hella_online_20240829
陈薪名 4 months ago
parent
commit
05a1750a61
  1. 11
      src/api/wms/balance/index.ts
  2. 6
      src/api/wms/countJobMain/index.ts
  3. 11
      src/api/wms/productionitemcodeSpareitemcode/index.ts
  4. 13
      src/api/wms/remark/index.ts
  5. 77
      src/views/qms/inspectionJob/inspectionJobMain.data.ts
  6. 8
      src/views/qms/inspectionScheme/addForm.vue
  7. 60
      src/views/wms/basicDataManage/itemManage/productionitemcodeSpareitemcode/productionitemcodeSpareitemcode.data.ts
  8. 28
      src/views/wms/basicDataManage/itemManage/relegate/relegateRequest/index.vue
  9. 34
      src/views/wms/basicDataManage/itemManage/relegate/relegateRequest/relegateRequestMain.data.ts
  10. 4
      src/views/wms/basicDataManage/labelManage/callmaterials/callmaterials.data.ts
  11. 30
      src/views/wms/basicDataManage/strategySetting/strategy/upShelfStrategy/AddForm.vue
  12. 12
      src/views/wms/basicDataManage/subject/mstr/mstr.data.ts
  13. 2
      src/views/wms/countManage/count/countJobMain/countJobMain.data.ts
  14. 24
      src/views/wms/countManage/count/countJobMain/index.vue
  15. 2
      src/views/wms/inventoryjobManage/unplannedissue/unplannedissueRequestMain/index.vue
  16. 7
      src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/index.vue
  17. 13
      src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/productionreturnRequestMainNo.data.ts
  18. 9
      src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptReport/index.vue
  19. 13
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue
  20. 15
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts
  21. 4
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMainDifference/index.vue
  22. 10
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMainDifference/supplierinvoiceRequestMainDifference.data.ts

11
src/api/wms/balance/index.ts

@ -190,6 +190,17 @@ export const getBalanceByBusinessTypeByItemType = async (params) => {
return await request.get({ url: `/wms/balance/pageBusinessTypeToBalance`, params })
}
}
// 查询库存余额列表根据业务类型 根据库存状态及库区类型再根据物料的种类筛选
export const getBalanceByBusinessCategoryByItemType = async (params) => {
if (params.isSearch) {
delete params.isSearch
const data = {...params}
return await request.post({ url: '/wms/balance/pageBusinessCategoryToBalanceSenior', data })
} else {
return await request.get({ url: `/wms/balance/pageBusinessCategoryToBalance`, params })
}
}
// 根据code获取数据列表
export const getBalanceItemListByCodes = async (data) => {
  return await request.get({ url: `/wms/balance/listByCodes`,data })

6
src/api/wms/countJobMain/index.ts

@ -91,6 +91,12 @@ export const importTemplate = () => {
export const closeCountJobMain = (id: number) => {
return request.put({ url: '/wms/count-job-main/close?id=' + id })
}
// 完成盘点任务主
export const doneCountJobMain = (id: number) => {
//更换一下完成接口
return request.put({ url: '/wms/count-job-main/close?id=' + id })
}
// 承接盘点任务主
export const acceptCountJobMain = (id: number) => {
return request.put({ url: '/wms/count-job-main/accept?id=' + id })

11
src/api/wms/productionitemcodeSpareitemcode/index.ts

@ -19,6 +19,17 @@ export const getProductionitemcodeSpareitemcodePage = async (params) => {
}
}
// 查询量产件备件关系列表
export const getProductionitemcodeSpareitemcodeRelation = async (params) => {
if (params.isSearch) {
delete params.isSearch
const data = {...params}
return await request.post({ url: '/wms/productionitemcode-spareitemcode/getRelationSeniorS', data })
} else {
return await request.get({ url: `/wms/productionitemcode-spareitemcode/getRelation`, params })
}
}
// 查询量产件备件关系详情
export const getProductionitemcodeSpareitemcode = async (id: number) => {
return await request.get({ url: `/wms/productionitemcode-spareitemcode/get?id=` + id })

13
src/api/wms/remark/index.ts

@ -10,5 +10,18 @@ export const createRemark= async (data) => {
}
// 查询变更记录列表
export const getChangeRecordPage = async (params) => {
params = handleParams(params);
return await request.get({ url: `/infra/trends/list`, params })
}
const handleParams = (params) => {
if (params.tableName && params.tableName.trim() !== "") {
// 检查是否包含大写字母
if (/[A-Z]/.test(params.tableName)) {
params.tableName = toSnakeCase(params.tableName);
}
}
return params;
}
const toSnakeCase = (str) => {
return str.replace(/[A-Z]/g, letter => `_${letter.toLowerCase()}`);
}

77
src/views/qms/inspectionJob/inspectionJobMain.data.ts

@ -270,6 +270,18 @@ export const InspectionJobMain = useCrudSchemas(
width: 150
}
},
{
label: '完成人',
field: 'completeUser',
sort: 'custom',
dictType: DICT_TYPE.TRUE_FALSE,
dictClass: 'string', // 默认都是字符串类型其他暂不考虑
isTable: false,
isDetail: false,
isSearch: true,
isTableForm: false,
isForm: false,
},
// {
// label: '检验批来源',
// field: 'inspectionBatchSource',
@ -439,6 +451,71 @@ export const InspectionJobMain = useCrudSchemas(
// }
// }
// },
{
label: '承接人',
field: 'acceptUserName',
table: {
width: 130
},
isForm: false,
isTable: false,
isDetail: true
},
{
label: '承接时间',
field: 'acceptTime',
isForm: false,
table: {
width: 180
},
isTable: false,
isDetail: true,
formatter: dateFormatter,
detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss'
},
form: {
component: 'DatePicker',
componentProps: {
style: { width: '100%' },
type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x'
}
}
},
{
label: '完成人',
field: 'completeUserName',
table: {
width: 130
},
isForm: false,
isTable: true,
isDetail:true
},
{
label: '完成时间',
field: 'completeTime',
isForm: false,
table: {
width: 180
},
formatter: dateFormatter,
detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss'
},
form: {
component: 'DatePicker',
componentProps: {
style: { width: '100%' },
type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x'
}
}
},
{
label: '创建时间',
field: 'createTime',

8
src/views/qms/inspectionScheme/addForm.vue

@ -8,7 +8,7 @@
:vLoading="formLoading"
>
<div style="max-height: 80vh; overflow-y: auto; padding: 0px 20px">
<el-form :model="data" label-width="auto" :rules="rules" ref="formMainRef">
<el-form :model="data" label-width="auto" :rules="rules" ref="formMainRef">
<el-row gutter="20">
<el-col :span="12" v-if="data.code">
<el-form-item label="编码" prop="code">
@ -833,7 +833,7 @@ const open = async (type: string, row?: any, masterParmas?: any, titleName?: any
}
let arr = []
list.forEach((item, index) => {
editableTabsValue.value = index + 1
// editableTabsValue.value = index + 1
item.name = index + 1
console.log(item.inspectionCharacteristicsBaseVO)
@ -886,6 +886,7 @@ const open = async (type: string, row?: any, masterParmas?: any, titleName?: any
}
arr.push(obj)
})
editableTabsValue.value = 1
data.value.process = arr
console.log(111, data.value)
}else{
@ -899,7 +900,7 @@ const open = async (type: string, row?: any, masterParmas?: any, titleName?: any
rules.value['inspectionCharacteristicsBaseVO.quantifyLowlimit'][0].required = false
rules.value['inspectionCharacteristicsBaseVO.quantifyTarget'][0].required = false
list.forEach((item, index) => {
editableTabsValue.value = index + 1
// editableTabsValue.value = index + 1
item.name = index + 1
// rules.value['inspectionCharacteristicsBaseVO.quantifyCapping'][0].required = true
//
@ -919,6 +920,7 @@ const open = async (type: string, row?: any, masterParmas?: any, titleName?: any
isShowField.value += 1 //isShowField > 0aql
}
})
editableTabsValue.value = 1
// aql
if (isShowField.value > 0) {
rules.value.aql[0].required = true

60
src/views/wms/basicDataManage/itemManage/productionitemcodeSpareitemcode/productionitemcodeSpareitemcode.data.ts

@ -1,5 +1,7 @@
import type { CrudSchema } from '@/hooks/web/useCrudSchemas'
import { dateFormatter } from '@/utils/formatTime'
import * as ItembasicApi from '@/api/wms/itembasic'
import { Itembasic } from '../itembasic/itembasic.data'
// 表单校验
export const ProductionitemcodeSpareitemcodeRules = reactive({
@ -13,12 +15,70 @@ export const ProductionitemcodeSpareitemcode = useCrudSchemas(reactive<CrudSchem
field: 'productionItemCode',
sort: 'custom',
isSearch: true,
form: {
// labelMessage: '信息提示说明!!!',
componentProps: {
enterSearch: true, //可输入回车
isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选择物料代码', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段
searchTitle: '物料基础信息', // 查询弹窗标题
searchAllSchemas: Itembasic.allSchemas, // 查询弹窗所需类
searchPage: ItembasicApi.getItembasicPage, // 查询弹窗所需分页方法
searchCondition: [{
key: 'available',
value: 'TRUE',
isMainValue: false
},{
key: 'category',
value: 'LCJ',
isMainValue: false
}],
verificationParams: [{
key: 'code',
action: '==',
value: '',
isMainValue: false,
isSearch: 'true',
isFormModel: true
}], // 失去焦点校验参数
}
}
},
{
label: '备件',
field: 'spareItemCode',
sort: 'custom',
isSearch: true,
form: {
// labelMessage: '信息提示说明!!!',
componentProps: {
enterSearch: true, //可输入回车
isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选择物料代码', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段
searchTitle: '物料基础信息', // 查询弹窗标题
searchAllSchemas: Itembasic.allSchemas, // 查询弹窗所需类
searchPage: ItembasicApi.getItembasicPage, // 查询弹窗所需分页方法
searchCondition: [{
key: 'available',
value: 'TRUE',
isMainValue: false
},{
key: 'category',
value: 'BJ',
isMainValue: false
}],
verificationParams: [{
key: 'code',
action: '==',
value: '',
isMainValue: false,
isSearch: 'true',
isFormModel: true
}], // 失去焦点校验参数
}
}
},
{
label: '是否可用',

28
src/views/wms/basicDataManage/itemManage/relegate/relegateRequest/index.vue

@ -72,6 +72,7 @@ import download from '@/utils/download'
import { RelegateRequestMain, RelegateRequestMainRules, RelegateRequestDetail, RelegateRequestDetailRules } from './relegateRequestMain.data'
import * as RelegateRequestMainApi from '@/api/wms/relegateRequestMain'
import * as RelegateRequestDetailApi from '@/api/wms/relegateRequestDetail'
import * as ItembasicApi from '@/api/wms/itembasic'
import * as defaultButtons from '@/utils/disposition/defaultButtons'
import TableHead from '@/components/TableHead/src/TableHead.vue'
import ImportForm from '@/components/ImportForm/src/ImportForm.vue'
@ -109,7 +110,20 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row) =>
})
} else if (formField == 'downItemCode') {
row['downItemCode'] = val[0]['code']
if(row['itemCode'] == val[0]['spareItemCode']){
row['downItemCode'] = val[0]['productionItemCode'] //
}else{
row['downItemCode'] = val[0]['spareItemCode'] //
}
console.log(row['itemCode']);
// ItembasicApi.getItemListByCodes(row['itemCode'])
// if(){
// row['downItemCode'] = val[0]['productionItemCode']
// }else if(){
// row['downItemCode'] = val[0]['spareItemCode']
// }
} else if (formField == 'toLocationCode') {
row['toLocationCode'] = val[0]['code']
} else {
@ -139,17 +153,7 @@ const searchTableSuccessDetail = (formField, searchField, val, formRef) => {
RelegateRequestDetail.allSchemas.tableFormColumns.map(item => {
if (item.field == 'itemCode') {
item.tableForm.searchCondition = [
{
key: 'businessType',
value: businessType,
isMainValue: false
}
// ,{
// key: 'available',
// value: 'TRUE',
// isMainValue: false
// }
,{
{
message: '请选择从仓库代码!',
key: 'warehouseCode',
value: 'fromWarehouseCode',

34
src/views/wms/basicDataManage/itemManage/relegate/relegateRequest/relegateRequestMain.data.ts

@ -17,6 +17,8 @@ import { Location } from '@/views/wms/basicDataManage/factoryModeling/location/l
import * as ItempackageApi from '@/api/wms/itempackage'
import { Itempackaging } from '@/views/wms/basicDataManage/itemManage/itempackage/itempackage.data'
import * as ProductionitemcodeSpareitemcodeApi from '@/api/wms/productionitemcodeSpareitemcode'
import { ProductionitemcodeSpareitemcode } from '@/views/wms/basicDataManage/itemManage/productionitemcodeSpareitemcode/productionitemcodeSpareitemcode.data'
import * as confgiApi from '@/api/infra/config'
// 获取自动提交自动通过自动执行,跳过任务直接删生成记录的默认值
const queryParams = {
@ -322,7 +324,7 @@ export const RelegateRequestDetail = useCrudSchemas(reactive<CrudSchema[]>([
searchField: 'itemCode',
searchTitle: '库存余额信息',
searchAllSchemas: Balance.allSchemas,
searchPage: BalanceApi.getBalanceByBusinessTypeByItemType,
searchPage: BalanceApi.getBalanceByBusinessCategoryByItemType,
searchCondition: []
}
},
@ -334,7 +336,7 @@ export const RelegateRequestDetail = useCrudSchemas(reactive<CrudSchema[]>([
searchField: 'itemCode', // 查询弹窗赋值字段
searchTitle: '库存余额信息', // 查询弹窗标题
searchAllSchemas: Balance.allSchemas, // 查询弹窗所需类
searchPage: BalanceApi.getBalanceByBusinessTypeByItemType, // 查询弹窗所需分页方法
searchPage: BalanceApi.getBalanceByBusinessCategoryByItemType, // 查询弹窗所需分页方法
searchCondition:[
// {
// key: 'available',
@ -361,19 +363,20 @@ export const RelegateRequestDetail = useCrudSchemas(reactive<CrudSchema[]>([
enterSearch: true,
isSearchList: true,
searchListPlaceholder: '请选择降级物料代码',
searchField: 'code',
searchField: 'productionItemCode',
searchTitle: '物料基础信息',
searchAllSchemas: Itembasic.allSchemas,
searchPage: ItembasicApi.getItembasicPage,
searchAllSchemas: ProductionitemcodeSpareitemcode.allSchemas,
searchPage: ProductionitemcodeSpareitemcodeApi.getProductionitemcodeSpareitemcodeRelation,
searchCondition: [{
key: 'available',
value: 'TRUE',
isMainValue: false
},{
key: 'type',
value: confgiData.itemType,
isMainValue: false
}],
key: 'itemCode',
value: 'itemCode',
isTableRowValue: true,
isMainValue:false
}],
verificationParams: [{
key: 'code',
action: '==',
@ -387,19 +390,20 @@ export const RelegateRequestDetail = useCrudSchemas(reactive<CrudSchema[]>([
tableForm:{
isInpuFocusShow: true,
searchListPlaceholder: '请选择降级物料代码', // 输入框占位文本
searchField: 'itemCode', // 查询弹窗赋值字段
searchField: 'productionItemCode', // 查询弹窗赋值字段
searchTitle: '物料基础信息', // 查询弹窗标题
searchAllSchemas: Itembasic.allSchemas, // 查询弹窗所需类
searchPage: ItembasicApi.getItembasicPage, // 查询弹窗所需分页方法
searchAllSchemas: ProductionitemcodeSpareitemcode.allSchemas, // 查询弹窗所需类
searchPage: ProductionitemcodeSpareitemcodeApi.getProductionitemcodeSpareitemcodeRelation, // 查询弹窗所需分页方法
searchCondition:[
{
key: 'available',
value: 'TRUE',
isMainValue: false
},{
key: 'type',
value: confgiData.itemType,
isMainValue: false
key: 'itemCode',
value: 'itemCode',
isTableRowValue: true,
isMainValue:false
}]
},
table: {

4
src/views/wms/basicDataManage/labelManage/callmaterials/callmaterials.data.ts

@ -38,7 +38,7 @@ export const CallmaterialsRules = reactive({
workStationCode: [required],
uom: [required],
callmaterialQty: [required],
project: [{ max: 50, message: '最多50字符', trigger: 'blur'}]
project: [{ max: 64, message: '最多50字符', trigger: 'blur'}]
})
export const Callmaterials = useCrudSchemas(reactive<CrudSchema[]>([
@ -361,7 +361,7 @@ export const Callmaterials = useCrudSchemas(reactive<CrudSchema[]>([
} ,
form: {
componentProps:{
maxlength: 50,
maxlength: 64,
type:'textarea',
showWordLimit:true
}

30
src/views/wms/basicDataManage/strategySetting/strategy/upShelfStrategy/AddForm.vue

@ -305,7 +305,8 @@
<!-- 仓库 库区 库位组 库位 -->
<el-col key="仓库col" :span="24">
<el-form-item key="仓库formItem" label="" label-width="0" prop="warehouse" class="err-120">
<el-select key="仓库"
<span class="peizhi">*</span>
<el-select key="仓库"
v-model="warehouseType"
placeholder=""
style="width: 110px; margin-right: 10px"
@ -594,7 +595,9 @@ const rules = ref({
strategyCode: [{ required: true, message: '请输入代码', trigger: 'blur' },{ max: 50, message: '不得超过50个字符', trigger: 'blur' }],
name: [{ required: true, message: '请输入名字', trigger: 'blur' },{ max: 50, message: '不得超过50个字符', trigger: 'blur' }],
description: [{ required: true, message: '请输入描述', trigger: 'blur' },{ max: 50, message: '不得超过50个字符', trigger: 'blur' }],
priority: [{ required: true, message: '请输入优先级', trigger: 'blur' }]
priority: [{ required: true, message: '请输入优先级', trigger: 'blur' }],
// warehouse: [{ required: true, message: '', trigger: 'blur' }],
})
//
@ -863,6 +866,24 @@ defineExpose({ open }) // 提供 open 方法,用于打开弹窗
/** 提交表单 */
const emit = defineEmits(['success']) // success
const submitForm = async () => {
if(warehouseType.value == 'WarehouseCode' && !formData.value.configuration.WarehouseCode){
//
message.error('请选择仓库')
return
// formData.configuration.WarehouseCode
}else if(warehouseType.value == 'AreaCode'&& !formData.value.configuration.AreaCode){
//
message.error('请选择库区')
return
}else if(warehouseType.value == 'LocationGroupCode'&&!formData.value.configuration.LocationGroupCode){
//
message.error('请选择库位组')
return
}else if(warehouseType.value == 'LocationCode'&&!formData.value.configuration.LocationCode){
//
message.error('请选择库位')
return
}
//
if (!formRef) return
const valid = await formRef.value.validate()
@ -1010,4 +1031,9 @@ const resetForm = () => {
::v-deep .err-120 .el-form-item__error {
padding-left: 120px !important;
}
.peizhi {
color: var(--el-color-danger);
margin-right:4px;
}
</style>

12
src/views/wms/basicDataManage/subject/mstr/mstr.data.ts

@ -40,6 +40,18 @@ export const Mstr = useCrudSchemas(reactive<CrudSchema[]>([
sort: 'custom',
isSearch: true,
},
{
label: '废品账户',
field: 'plScrpAcct',
sort: 'custom',
isSearch: true,
},
{
label: '盘点差异账户',
field: 'plDscrAcct',
sort: 'custom',
isSearch: true,
},
{
label: '创建时间',
field: 'createTime',

2
src/views/wms/countManage/count/countJobMain/countJobMain.data.ts

@ -512,7 +512,7 @@ export const CountJobMain = useCrudSchemas(reactive<CrudSchema[]>([
isDetail: false,
isForm: false,
table: {
width: 220,
width: 250,
fixed: 'right'
},
}

24
src/views/wms/countManage/count/countJobMain/index.vue

@ -215,6 +215,15 @@ const butttondata = (row,$index) => {
hasPermi: '' // wms:count-job-main:importCountJob
},
defaultButtons.mainListJobAbaBtn({hide:isShowMainButton(row,['2'])}), //
{
label: '完成',
name: 'done',
hide: isShowMainButton(row,[]),
type: 'success',
color: '',
link: true, //
hasPermi: '' // wms:count-job-main:importCountJob
},
// defaultButtons.mainListJobExeBtn({hide:isShowMainButton(row,['2'])}), //
]
}
@ -237,7 +246,10 @@ const buttonTableClick = async (val, row) => {
handleExportCountJob(row.id,row.number)
} else if( val == 'importCountJob'){ //
handleImport(row.id)
} else if( val == 'done'){ //
handleDone(row.id)
}
}
/** 关闭按钮操作 */
@ -249,6 +261,18 @@ const handleClose = async (id: number) => {
await getList()
} catch {}
}
//
const handleDone = async (id: number) => {
try {
await message.confirm('确认完成吗?')
await CountJobMainApi.doneCountJobMain(id)
await getList()
} catch {
}
}
//
const { wsCache } = useCache()
/** 详情操作 */

2
src/views/wms/inventoryjobManage/unplannedissue/unplannedissueRequestMain/index.vue

@ -114,8 +114,8 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
if (type == 'tableForm') {
//
if(formField === 'itemCode'){
let newRow = JSON.parse(JSON.stringify(tableFormKeys))
val.forEach(item=>{
let newRow = JSON.parse(JSON.stringify(tableFormKeys))
newRow[formField] =item[searchField]
newRow['packingNumber'] = item['packingNumber']
newRow['containerNumber'] = item['containerNumber']

7
src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/index.vue

@ -42,8 +42,10 @@
<!-- 表单弹窗添加/修改 -->
<BasicForm
ref="formRef"
:isOpenSearchTable="true"
:isOpenSearchTable="true"
fieldTableColumn="workStationCode"
:isShowReduceButtonSelection="true"
@tableSelectionDelete="tableSelectionDelete"
@success="getList"
:rules="ProductionreturnRequestMainRules"
:formAllSchemas="ProductionreturnRequestMain.allSchemas"
@ -567,6 +569,9 @@ const handleAddTable = () => {
const handleDeleteTable = (item, index) => {
tableData.value.splice(index, 1)
}
const tableSelectionDelete = (selection) => {
tableData.value = tableData.value.filter(item => !selection.includes(item))
}
//
const submitForm = async (formType, submitData) => {

13
src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/productionreturnRequestMainNo.data.ts

@ -127,7 +127,18 @@ export const ProductionreturnRequestDetail = useCrudSchemas(reactive<CrudSchema[
value: 'productionLineCode',
message: '请选择生产线信息!',
isMainValue: true
}]
}],
verificationPage: WorkstationApi.getWorkstationByCodes, // 校验数去焦点输入是否正确的方法
isShowTableFormSearch: true,
verificationParams: [{
key: 'code',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
},
},

9
src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptReport/index.vue

@ -27,6 +27,9 @@
</template>
<script lang="ts" setup>
import { DictTag } from '@/components/DictTag'
import { TableColumn } from '@/types/table'
//
import { dateFormatter,dateFormatter2 } from '@/utils/formatTime'
import {queryQualityInspection} from '@/api/wms/supplierdeliverInspectionDetail'
@ -101,6 +104,12 @@ const getAnnexList = async () => {
"field": "uom",
"dictType": "uom",
"dictClass": "string",
formatter : (_: Recordable, __: TableColumn, cellValue: any) => {
return h(DictTag, {
type: "uom", // !
value: cellValue
})
},
"isTable": true,
"isForm": false,
"sort": "custom",

13
src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue

@ -32,7 +32,7 @@
</el-button>
</template>
<template #differencePrice="{row}">
<span :class="{'red-text':row.differencePrice!=0}">{{ Number(row.differencePrice).toFixed(2) }}</span>
<span :class="{'red-text':row.differencePrice!=0}">{{ Number(row.differencePrice).toFixed(4) }}</span>
</template>
<template #action="{ row,$index }">
<ButtonBase :Butttondata="butttondata(row,$index)" @button-base-click="buttonTableClick($event,row)" />
@ -115,7 +115,7 @@
<template #selectionsActionspoLine="{selections}">
<div style="text-align: left;margin-right:10px">
系统未税金额:{{Number(selections.reduce((prev, item) => prev + Number(Number(Number(Number(item['purchasePrice']).toFixed(2))*item['invoicableQuantity']).toFixed(2)),0)).toFixed(2)}}
系统未税金额:{{Number(selections.reduce((prev, item) => prev + Number(Number(Number(Number(item['purchasePrice']).toFixed(4))*item['invoicableQuantity']).toFixed(2)),0)).toFixed(2)}}
</div>
</template>
<!-- <template #foorter>
@ -124,7 +124,7 @@
</div>
</template> -->
<template v-slot="{row}">
<el-input :disabled="true" :class="{'is-red': row['singlePrice'] - row['purchasePrice'] > 0}" :modelValue="((row['singlePrice']) - (row['purchasePrice'])).toFixed(2)"/>
<el-input :disabled="true" :class="{'is-red': row['singlePrice'] - row['purchasePrice'] > 0}" :modelValue="((row['singlePrice']) - (row['purchasePrice'])).toFixed(4)"/>
</template>
</BasicForm>
@ -200,7 +200,7 @@
:sumFormDataByForm ="(formRef,formModel)=>{
const {singlePrice=0,purchasePrice=0} = formModel
formRef.value.setValues({
differencePrice:Number((Number(singlePrice)-Number(purchasePrice)).toFixed(2))
differencePrice:Number((Number(singlePrice)-Number(purchasePrice)).toFixed(4))
})
}"
:isBasic="false"
@ -343,7 +343,8 @@ const searchTableSuccessDetail = async (formField, searchField, val, formRef,sea
if (type == 'tableForm') {
//
val.forEach(item=>{
if(tableData.value.find(item1=>item1['poNumber'] == item['poNumber']&&item1['poLine'] == item['poLine'])) return
if(tableData.value.find(item1=>item1['recvBillNum'] == item['recvBillNum'])) return
const newRow = {...row}
newRow[formField] = item[searchField]
if (formField == 'poLine') {
@ -1032,7 +1033,7 @@ const handleImport = () => {
const submitForm = async (formType, submitData) => {
let data = {...submitData}
tableData.value.forEach((item) => {
item.differencePrice = Number((Number(item?.singlePrice)-Number(item?.purchasePrice)).toFixed(2))
item.differencePrice = Number((Number(item?.singlePrice)-Number(item?.purchasePrice)).toFixed(4))
})
data.subList = tableData.value //
console.log('data',data)

15
src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts

@ -1473,8 +1473,9 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
},
]))
const singlePriceFormart = (row, column, cellValue) => {
cellValue= Number(cellValue).toFixed(2)
cellValue= Number(cellValue).toFixed(4)
cellValue = cellValue + '' || ''
let x = cellValue.split('.')
@ -1695,13 +1696,13 @@ export const SupplierinvoiceRequestDetail = useCrudSchemas(reactive<CrudSchema[]
component: 'InputNumber',
componentProps: {
min: 0,
precision: 2,
precision: 4,
}
},
tableForm: {
type: 'InputNumber',
min: 0,
precision: 2,
precision: 4,
}
},
{
@ -1716,14 +1717,14 @@ export const SupplierinvoiceRequestDetail = useCrudSchemas(reactive<CrudSchema[]
componentProps: {
disabled: true,
min: 0,
precision: 2,
precision: 4,
}
},
tableForm:{
type: 'InputNumber',
disabled: true,
min: 0,
precision: 2,
precision: 4,
}
},
{
@ -1737,14 +1738,14 @@ export const SupplierinvoiceRequestDetail = useCrudSchemas(reactive<CrudSchema[]
componentProps: {
disabled: true,
min: 0,
precision: 2,
precision: 4,
}
},
tableForm:{
type: 'slot',
disabled: true,
min: 0,
precision: 2,
precision: 4,
}
},
{

4
src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMainDifference/index.vue

@ -38,7 +38,7 @@
</el-button>
</template>
<template #differencePrice="{row}">
<span :class="{'red-text':row.differencePrice!=0}">{{ Number(row.differencePrice).toFixed(2) }}</span>
<span :class="{'red-text':row.differencePrice!=0}">{{ Number(row.differencePrice).toFixed(4) }}</span>
</template>
</Table>
</ContentWrap>
@ -98,7 +98,7 @@
:sumFormDataByForm ="(formRef,formModel)=>{
const {singlePrice=0,purchasePrice=0} = formModel
formRef.value.setValues({
differencePrice:Number((Number(singlePrice)-Number(purchasePrice)).toFixed(2))
differencePrice:Number((Number(singlePrice)-Number(purchasePrice)).toFixed(4))
})
}"
:isBasic="false"

10
src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMainDifference/supplierinvoiceRequestMainDifference.data.ts

@ -1497,7 +1497,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
]))
const singlePriceFormart = (row, column, cellValue) => {
cellValue= Number(cellValue).toFixed(2)
cellValue= Number(cellValue).toFixed(4)
cellValue = cellValue + '' || ''
let x = cellValue.split('.')
@ -1739,14 +1739,14 @@ export const SupplierinvoiceRequestDetail = useCrudSchemas(reactive<CrudSchema[]
componentProps: {
disabled: true,
min: 0,
precision: 2,
precision: 4,
}
},
tableForm:{
type: 'InputNumber',
disabled: true,
min: 0,
precision: 2,
precision: 4,
}
},
{
@ -1760,14 +1760,14 @@ export const SupplierinvoiceRequestDetail = useCrudSchemas(reactive<CrudSchema[]
componentProps: {
disabled: true,
min: 0,
precision: 2,
precision: 4,
}
},
tableForm:{
type: 'slot',
disabled: true,
min: 0,
precision: 2,
precision: 4,
}
},
{

Loading…
Cancel
Save