From 6e301feb8db7f0e2ec0307e23b13022bb0f3be23 Mon Sep 17 00:00:00 2001
From: lion <120344285@qq.com>
Date: Mon, 9 Jun 2025 14:46:52 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BB=93=E5=BA=93?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.env.development | 2 +-
public/print.html | 1 +
public/ps.html | 3 +-
src/api/workOrder.js | 50 +++++
src/views/inventorys/stocks.vue | 60 +++---
src/views/jsc/components/fenleiChart.vue | 34 +++-
src/views/maintenance/maintenance_records.vue | 37 ++--
.../outbounds/component/addoutbounds.vue | 121 +++++++++---
src/views/outbounds/index.vue | 6 +-
src/views/stocks/component/addRuku.vue | 9 +-
src/views/storages/components/addStorage.vue | 2 +-
src/views/storages/index.vue | 8 +-
src/views/virtual/index.vue | 7 +-
.../workOrder/component/addWorkOrder.vue | 173 ++++++++++++++++++
src/views/workOrder/index.vue | 140 ++++++++++++++
15 files changed, 552 insertions(+), 101 deletions(-)
create mode 100644 src/api/workOrder.js
create mode 100644 src/views/workOrder/component/addWorkOrder.vue
create mode 100644 src/views/workOrder/index.vue
diff --git a/.env.development b/.env.development
index c384cff..6d1cc36 100644
--- a/.env.development
+++ b/.env.development
@@ -10,7 +10,7 @@ ENV='development'
VUE_APP_BASE_API = http://192.168.60.99:8004/
VUE_APP_UPLOAD_API = http://192.168.60.99:8004/api/admin/upload-file
VUE_APP_OA_URL= http://192.168.60.18:8001
-VUE_APP_OA_URL_TYPE = '{"领用":"31","处置":"32","应急":"33"}'
+VUE_APP_OA_URL_TYPE = '{"领用":"37","处置":"38","应急":"39",'采购入库':40}'
diff --git a/public/print.html b/public/print.html
index 4ab990f..841e167 100644
--- a/public/print.html
+++ b/public/print.html
@@ -52,6 +52,7 @@
"
类型:"+printObj['wuzileixing']+"
"+
"名称:"+printObj['zichanmingcheng']+"
"+
"型号:"+printObj['guigexinghao']+"
"+
+ "批次:"+printObj['rukupici']+"
"+
""+
""+
"")
diff --git a/public/ps.html b/public/ps.html
index 58bc74e..8c4908b 100644
--- a/public/ps.html
+++ b/public/ps.html
@@ -91,8 +91,7 @@
}
function saveWuzishuliang() {
- printObj.zaikushuliang = $("#input").val()
- return
+ printObj.zaikushuliang = $("#input").val()
$.ajax({
type: "post",
timeout: 15000,
diff --git a/src/api/workOrder.js b/src/api/workOrder.js
new file mode 100644
index 0000000..687ce3f
--- /dev/null
+++ b/src/api/workOrder.js
@@ -0,0 +1,50 @@
+import request from "@/utils/request";
+function customParamsSerializer(params) {
+ let result = '';
+ for (let key in params) {
+ if (params.hasOwnProperty(key)) {
+ if (Array.isArray(params[key])) {
+ params[key].forEach((item,index) => {
+ result += `${key}[${index}][key]=${item.key}&${key}[${index}][op]=${item.op}&${key}[${index}][value]=${item.value}&`;
+ });
+ } else {
+ result += `${key}=${params[key]}&`;
+ }
+ }
+ }
+ return result.slice(0, -1);
+}
+export function index(params,isLoading = false) {
+ return request({
+ method: "get",
+ url: "/api/admin/work-sheet/index",
+ params,
+ paramsSerializer: customParamsSerializer,
+ isLoading
+ })
+}
+
+export function show(params, isLoading = true) {
+ return request({
+ method: "get",
+ url: "/api/admin/work-sheet/show",
+ params,
+ isLoading
+ })
+}
+
+export function save(data) {
+ return request({
+ method: "post",
+ url: "/api/admin/work-sheet/save",
+ data
+ })
+}
+
+export function destroy(params) {
+ return request({
+ method: "get",
+ url: "/api/admin/work-sheet/destroy",
+ params
+ })
+}
diff --git a/src/views/inventorys/stocks.vue b/src/views/inventorys/stocks.vue
index 68568b8..30b607b 100644
--- a/src/views/inventorys/stocks.vue
+++ b/src/views/inventorys/stocks.vue
@@ -96,36 +96,36 @@
fixed: 'left',
width: 80,
},
- {
- label: '入库时间',
- prop:'stocks_rukushijian',
- width: 180
- },
- {
- label: '入库类型',
- prop:'stocks_rukuleixing',
- width: 180,
- },
- {
- label: '关联记录',
- prop:'stocks_guanlianjilu',
- width: 180,
- },
- {
- label: '经办人',
- prop:'stocks_jingbanren',
- width: 180,
- },
- {
- label: '记录人员',
- prop:'stocks_jilurenyuan',
- width: 180,
- },
- {
- label: '保管人员',
- prop:'stocks_baoguanrenyuan',
- width: 180,
- },
+ // {
+ // label: '入库时间',
+ // prop:'stocks_rukushijian',
+ // width: 180
+ // },
+ // {
+ // label: '入库类型',
+ // prop:'stocks_rukuleixing',
+ // width: 180,
+ // },
+ // {
+ // label: '关联记录',
+ // prop:'stocks_guanlianjilu',
+ // width: 180,
+ // },
+ // {
+ // label: '经办人',
+ // prop:'stocks_jingbanren',
+ // width: 180,
+ // },
+ // {
+ // label: '记录人员',
+ // prop:'stocks_jilurenyuan',
+ // width: 180,
+ // },
+ // {
+ // label: '保管人员',
+ // prop:'stocks_baoguanrenyuan',
+ // width: 180,
+ // },
{
label: "物资编码",
width: 180,
diff --git a/src/views/jsc/components/fenleiChart.vue b/src/views/jsc/components/fenleiChart.vue
index 9443246..e0608d2 100644
--- a/src/views/jsc/components/fenleiChart.vue
+++ b/src/views/jsc/components/fenleiChart.vue
@@ -199,19 +199,36 @@
rotate: 30, // 旋转角度
fontSize: 12 ,// 缩小字号
color: '#fff',
+ show: false
// lineStyle: { }
},
labelLine: {
- show: true, // 显示引导线
- length: 10, // 第一段线的长度(从饼图边缘到折点)
- length2: 30, // 第二段线的长度(从折点到文字)
- lineStyle: {
- color: '#fff', // 线条颜色
- width: 1, // 线条宽度
- type: 'solid' // 线条类型
+ show: false
+ },
+ emphasis: {
+ label: {
+ show: true
+ },
+ labelLine: {
+ show: true,
+ length: 20,
+ length2: 30,
+ lineStyle: {
+ color: '#fff'
+ }
}
},
// labelLine: {
+ // show: true, // 显示引导线
+ // length: 10, // 第一段线的长度(从饼图边缘到折点)
+ // length2: 30, // 第二段线的长度(从折点到文字)
+ // lineStyle: {
+ // color: '#fff', // 线条颜色
+ // width: 1, // 线条宽度
+ // type: 'solid' // 线条类型
+ // }
+ // },
+ // labelLine: {
// show: true,
// length: 10,
// length2: 15,
@@ -258,7 +275,8 @@
position: 'inside',
color: '#fff',
formatter: '{b}\n{c}',
- fontSize: 14
+ fontSize: 14,
+ position: 'center',
},
itemStyle: {
shadowBlur: 10,
diff --git a/src/views/maintenance/maintenance_records.vue b/src/views/maintenance/maintenance_records.vue
index 8487d7f..8555e2a 100644
--- a/src/views/maintenance/maintenance_records.vue
+++ b/src/views/maintenance/maintenance_records.vue
@@ -108,7 +108,8 @@
align="center"
>
- {{ getStatusText(scope.row.status) }}
+ {{ getStatusText(scope.row.status) }}
+ {{ getStatusText(scope.row.status) }}
-
-
+ 查看
+ 完成维护
@@ -676,7 +677,7 @@ export default {
}
.page-title {
- font-size: 1.5rem;
+ font-size: 15px;
font-weight: 600;
color: #333;
}
@@ -728,13 +729,13 @@ export default {
.card-item.completed { border-left-color: #52c41a; }
.card-label {
- font-size: 0.9rem;
+ font-size: 18px;
color: #888;
margin-bottom: 8px;
}
.card-value {
- font-size: 1.8rem;
+ font-size: 18px;
font-weight: 600;
color: #333;
}
@@ -837,7 +838,7 @@ export default {
display: flex;
align-items: flex-start;
justify-content: space-between;
- padding: 1.2rem 1.5rem;
+ padding: 12px 15px;
background: #f5f7fa;
border-bottom: 1px solid #eaeaea;
border-radius: 12px 12px 0 0;
@@ -846,7 +847,7 @@ export default {
.modal-title {
margin-bottom: 0;
line-height: 1.5;
- font-size: 1.35rem;
+ font-size: 16px;
font-weight: 700;
color: #222;
}
@@ -856,7 +857,7 @@ export default {
margin: -1rem -1rem -1rem auto;
background-color: transparent;
border: 0;
- font-size: 2rem;
+ font-size: 20px;
font-weight: 700;
line-height: 1;
color: #888;
@@ -873,7 +874,7 @@ export default {
.modal-body {
background: #fcfcfd;
- padding: 2rem 1.5rem 1.5rem 1.5rem;
+ padding: 20px 15px 15px 15px;
border-radius: 0 0 12px 12px;
display: grid;
grid-template-columns: 1fr 1fr;
@@ -894,7 +895,7 @@ export default {
.form-group label {
color: #888;
- font-size: 0.98rem;
+ font-size: 12px;
margin-bottom: 4px;
font-weight: 500;
}
@@ -904,8 +905,8 @@ export default {
.form-group input[type="file"] {
display: block;
width: 100%;
- padding: 0.5rem 0.75rem;
- font-size: 0.9rem;
+ padding: 5px 7.5px;
+ font-size: 16px;
font-weight: 400;
line-height: 1.5;
color: #495057;
@@ -921,11 +922,11 @@ export default {
}
.form-group input[type="file"] {
- padding: 0.3rem 0.75rem;
+ padding: 3px 7.5px;
}
.form-text {
- font-size: 0.8rem;
+ font-size: 16px;
color: #6c757d;
}
@@ -956,7 +957,7 @@ export default {
.form-value {
color: #222;
- font-size: 1.08rem;
+ font-size: 12px;
font-weight: 500;
background: transparent;
border: none;
@@ -1044,7 +1045,7 @@ export default {
max-width: 98vw;
}
.modal-body {
- padding: 1rem 0.5rem 1rem 0.5rem;
+ padding: 10px 5px;
grid-template-columns: 1fr;
}
}
@@ -1054,7 +1055,7 @@ export default {
justify-content: center;
align-items: center;
flex-wrap: wrap;
- padding: 0.75rem;
+ padding: 7.5px;
border-top: 1px solid #dee2e6;
border-bottom-right-radius: 12px;
border-bottom-left-radius: 12px;
diff --git a/src/views/outbounds/component/addoutbounds.vue b/src/views/outbounds/component/addoutbounds.vue
index 7550e94..972641a 100644
--- a/src/views/outbounds/component/addoutbounds.vue
+++ b/src/views/outbounds/component/addoutbounds.vue
@@ -21,15 +21,15 @@
-
+
- 关联凋令:
+ 关联工单:
-
-
+
+
@@ -109,7 +109,7 @@
-
+
*出库文件:
@@ -141,9 +141,8 @@
出库明细 :
-
+
-
@@ -294,6 +293,9 @@
show,
destroy
} from "@/api/system/baseForm.js"
+ import {
+ index as indexDiaoling
+ } from "@/api/workOrder.js"
import {
desChuku
} from "@/api/system/log.js"
@@ -491,11 +493,37 @@
},
created() {
this.headers.token = getToken()
- this.getCangku()
+ this.getCangku()
+ this.getWorkOrder()
this.getWuzi()
},
methods: {
+ // 获取工单
+ async getWorkOrder(){
+ const res = await indexDiaoling({
+ page:1,
+ page_size:999
+ })
+ this.diaolingList = res.data
+ },
+ changeDiaoling(e){
+ let arr =[]
+ this.diaolingList.map(item=>{
+ if(item.id===e){
+ if(item.files.length>0){
+ item.files.map(item=>{
+ arr.push({
+ id:item.id,
+ url:item.url,
+ name:item.original_name
+ })
+ })
+ }
+ }
+ })
+ this.fileList = arr
+ },
// 佐证文件上传
beforeUpload(file) {
// if (file.size / 1000 > 500) {
@@ -546,6 +574,16 @@
})
return
}
+ // 调令 必须选择工单
+ if(this.chukuType==='调令'){
+ if(!this.form.guanliandiaoling){
+ Message({
+ type: 'warning',
+ message: '请选择关联工单'
+ })
+ return
+ }
+ }
this.activeStep++
} else if (this.activeStep === 1) {
if (this.mingxiList.length === 0) {
@@ -672,21 +710,30 @@
// this.isShowWuzi = true
},
selectInventorysMx(e){
- this.wuziList.forEach((items) => {
- this.$set(items, 'isSelect', false)
- if (items.id == e.id) {
- this.$set(items, 'isSelect', true)
- this.mingxiObj.wuzibianma = e.wuzibianma
- this.mingxiObj.zichanmingcheng = e.zichanmingcheng
- this.mingxiObj.wuzileixing = e.wuzileixing
- this.mingxiObj.rukupici = e.rukupici
- this.mingxiObj.zaikushuliang = e.zaikushuliang
- this.mingxiObj.jiliangdanwei = e.jiliangdanwei
- this.mingxiObj.inventorys_id = e.id
- this.mingxiObj.guigexinghao = e.guigexinghao
- this.mingxiObj.shengchanriqi = e.shengchanriqi
- }
- });
+ this.mingxiObj.wuzibianma = e.wuzibianma
+ this.mingxiObj.zichanmingcheng = e.zichanmingcheng
+ this.mingxiObj.wuzileixing = e.wuzileixing
+ this.mingxiObj.rukupici = e.rukupici
+ this.mingxiObj.zaikushuliang = e.zaikushuliang
+ this.mingxiObj.jiliangdanwei = e.jiliangdanwei
+ this.mingxiObj.inventorys_id = e.id
+ this.mingxiObj.guigexinghao = e.guigexinghao
+ this.mingxiObj.shengchanriqi = e.shengchanriqi
+ // this.wuziList.forEach((items) => {
+ // this.$set(items, 'isSelect', false)
+ // if (items.id == e.id) {
+ // this.$set(items, 'isSelect', true)
+ // this.mingxiObj.wuzibianma = e.wuzibianma
+ // this.mingxiObj.zichanmingcheng = e.zichanmingcheng
+ // this.mingxiObj.wuzileixing = e.wuzileixing
+ // this.mingxiObj.rukupici = e.rukupici
+ // this.mingxiObj.zaikushuliang = e.zaikushuliang
+ // this.mingxiObj.jiliangdanwei = e.jiliangdanwei
+ // this.mingxiObj.inventorys_id = e.id
+ // this.mingxiObj.guigexinghao = e.guigexinghao
+ // this.mingxiObj.shengchanriqi = e.shengchanriqi
+ // }
+ // });
this.mingxiList.map(item=>{
if(item.inventorys_id===this.mingxiObj.inventorys_id){
Message({
@@ -764,8 +811,10 @@
const res = await show({
id: this.id,
table_name: this.tableName
- })
- this.form = {
+ })
+ this.activeStep=0
+ this.form = {
+ activeStep:0,
chukushijian: res?.chukushijian,
zhuangtai: res?.zhuangtai,
guanliandiaoling:res?.guanliandiaoling,
@@ -773,7 +822,8 @@
jieyongbumen: res?.jieyongbumen,
// jieyongren:res?.jieyongren,
jilurenyuan: res?.jilurenyuan,
- baofeiyuanyin: res?.baofeiyuanyin,
+ baofeiyuanyin: res?.baofeiyuanyin,
+ zuozhengwenjian:res.zuozhengwenjian?res.zuozhengwenjian:[],
beizhu: res?.beizhu,
chukumingxi: ''
}
@@ -817,9 +867,15 @@
})
return
}
+
this.form.zuozhengwenjian = []
for (var k of this.fileList) {
- this.form.zuozhengwenjian.push(k?.response?.id)
+ if(k.response){
+ this.form.zuozhengwenjian.push(k.response.id)
+ }else{
+ this.form.zuozhengwenjian.push(k.id)
+ }
+
}
// return
@@ -881,7 +937,8 @@
this.type = ''
this.mingxiList = []
this.fileList = []
- this.authName = ''
+ this.authName = ''
+ this.activeStep = 0
this.$refs['dialog'].reset()
}
}
@@ -971,5 +1028,11 @@
::v-deep .el-input-number .el-input__inner {
text-align: left !important;
+ }
+ ::v-deep .el-step.is-simple .el-step__head{
+ display: flex;
+ }
+ ::v-deep .chukumingxi{
+ width:100%
}
diff --git a/src/views/outbounds/index.vue b/src/views/outbounds/index.vue
index f1e7895..2da05fa 100644
--- a/src/views/outbounds/index.vue
+++ b/src/views/outbounds/index.vue
@@ -3,7 +3,7 @@
-
+
@@ -105,8 +105,8 @@
id:'处置',
value:'处置出库',
},{
- id:'凋令',
- value:'凋令出库'
+ id:'调令',
+ value:'调令出库'
}],
chukuType:'领用',
customForm: {
diff --git a/src/views/stocks/component/addRuku.vue b/src/views/stocks/component/addRuku.vue
index b1649cb..23835da 100644
--- a/src/views/stocks/component/addRuku.vue
+++ b/src/views/stocks/component/addRuku.vue
@@ -670,16 +670,17 @@
}).then(res => {
this.$message.success('保存成功')
console.log("res",res)
- if(res && res.inventorysIds.length>0){
- this.printArr = res.inventorysIds.join(",")
- }
+
if (this.type === 'editor' || this.form.rukuleixing==='回库') {
this.resetForm()
- this.$emit("refresh")
+ this.$emit("refresh")
this.isShow = false
return
}
+ if(res && res.inventorysIds && res.inventorysIds.length>0){
+ this.printArr = res.inventorysIds.join(",")
+ }
this.activeStep++
})
diff --git a/src/views/storages/components/addStorage.vue b/src/views/storages/components/addStorage.vue
index 9cd8bf6..d5668ca 100644
--- a/src/views/storages/components/addStorage.vue
+++ b/src/views/storages/components/addStorage.vue
@@ -40,7 +40,7 @@
- 是否自理:
+ 是否纳入物资管理:
diff --git a/src/views/storages/index.vue b/src/views/storages/index.vue
index 3c7c49e..ff26571 100644
--- a/src/views/storages/index.vue
+++ b/src/views/storages/index.vue
@@ -11,7 +11,7 @@
-