chenhaozhe
2025-07-14 25100ec3d663fdab00f6dacb9f427b772c2f806f
pages/weiwaigxIn/table.vue
@@ -65,20 +65,18 @@
               折叠其他条件<uni-icons color="#1890FF" style="margin-left: 8rpx;" type="top"></uni-icons>
            </view>
         </view>
         <view class="buttons">
            <button class="btn-a" size="mini" type="default" @tap="clear">重置</button>
            <button class="btn-b" size="mini" type="default" @tap="creat">新增</button>
            <button class="btn-c" size="mini" type="default" @tap="search">查询</button>
         </view>
      </view>
      <view style="width: 100%;height: 16rpx;background-color: #e5e5e5;"></view>
      <view class="list" v-for="(item,index) in showList" :key="index">
         <!-- #ifndef MP-WEIXIN -->
         <uni-card :title="item.生产订单号" :extra="item.单据号" style="margin: 10px;"
            @tap="showDetail = showDetail==index?-1:index">
         <uni-card :title="item.生产订单号" :extra="item.单据号" style="margin: 10px;" @tap="showDetail = showDetail==index?-1:index">
            <view class="card-detail">
               <view class="detail" v-if="item.流转卡号">
                  <text>流转卡号:</text>{{item.流转卡号}}
@@ -152,114 +150,34 @@
                  <text>备注:</text>{{item.备注}}
               </view>
            </view>
            <!-- #endif -->
            <!-- #ifdef MP-WEIXIN -->
            <uni-card style="margin: 10px;" @tap="showDetail = showDetail==index?-1:index">
               <view class="card-detail">
                  <view class="detail" v-if="item['流转卡号']">
                     <text>流转卡号:</text>{{item['流转卡号']}}
                  </view>
                  <view class="detail" v-if="item['订单跟踪号']">
                     <text>订单跟踪号:</text>{{item['订单跟踪号']}}
                  </view>
                  <view class="detail" v-if="item['产品名称']">
                     <text>产品名称:</text>{{item['产品名称']}}
                  </view>
                  <view class="detail" v-if="item['产品代码']">
                     <text>产品代码:</text>{{item['产品代码']}}
                  </view>
                  <view class="detail" v-if="item['工序']">
                     <text>工序:</text>{{item['工序']}}
                  </view>
                  <view class="detail" v-if="item['工序代码']">
                     <text>工序代码:</text>{{item['工序代码']}}
                  </view>
                  <view class="detail" v-if="item['日期']">
                     <text>日期:</text>{{item['日期'].substr(0,10)}}
                  </view>
            <view class="more" v-if="showDetail == index && operations != index">
               <view class="part" style="border-right: 1px solid #eee;">
                  <uni-icons type="top" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>收起
               </view>
               <view class="card-detail" v-if="showDetail == index">
                  <view class="detail" v-if="item['规格型号']">
                     <text>规格型号:</text>{{item['规格型号']}}
                  </view>
                  <view class="detail" v-if="item['计量单位']">
                     <text>计量单位:</text>{{item['计量单位']}}
                  </view>
                  <view class="detail" v-if="item['流水号']">
                     <text>流水号:</text>{{item['流水号']}}
                  </view>
                  <view class="detail" v-if="item['发出数量']">
                     <text>发出数量:</text>{{item['发出数量']}}
                  </view>
                  <view class="detail" v-if="item['发出时间']">
                     <text>发出时间:</text>{{item['发出时间'].substr(0,19)}}
                  </view>
                  <view class="detail" v-if="item['供应商']">
                     <text>供应商:</text>{{item['供应商']}}
                  </view>
                  <view class="detail" v-if="item['供应商代码']">
                     <text>供应商代码:</text>{{item['供应商代码']}}
                  </view>
                  <view class="detail" v-if="item['制单人']">
                     <text>制单人:</text>{{item['制单人']}}
                  </view>
                  <view class="detail" v-if="item['制单日期']">
                     <text>制单日期:</text>{{item['制单日期'].substr(0,10)}}
                  </view>
                  <view class="detail" v-if="item['修改人']">
                     <text>修改人:</text>{{item['修改人']}}
                  </view>
                  <view class="detail" v-if="item['修改日期']">
                     <text>修改日期:</text>{{item['修改日期'].substr(0,10)}}
                  </view>
                  <view class="detail" v-if="item['审核人']">
                     <text>审核人:</text>{{item['审核人']}}
                  </view>
                  <view class="detail" v-if="item['审核日期']">
                     <text>审核日期:</text>{{item['审核日期'].substr(0,10)}}
                  </view>
                  <view class="detail" v-if="item['关闭人']">
                     <text>关闭人:</text>{{item['关闭人']}}
                  </view>
                  <view class="detail" v-if="item['关闭日期']">
                     <text>关闭日期:</text>{{item['关闭日期'].substr(0,10)}}
                  </view>
                  <view class="detail" v-if="item['备注']">
                     <text>备注:</text>{{item['备注']}}
                  </view>
               <view class="part" @tap.stop="operations = operations==index?-1:index">
                  <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>操作
               </view>
               <!-- #endif -->
               <view class="more" v-if="showDetail == index && operations != index">
                  <view class="part" style="border-right: 1px solid #eee;">
                     <uni-icons type="top" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>收起
                  </view>
                  <view class="part" @tap.stop="operations = operations==index?-1:index">
                     <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;"
                        size="14"></uni-icons>操作
                  </view>
            </view>
            <view class="more" v-if="showDetail != index && operations != index">
               <view class="part" style="border-right: 1px solid #eee;">
                  <uni-icons type="bottom" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>更多信息
               </view>
               <view class="more" v-if="showDetail != index && operations != index">
                  <view class="part" style="border-right: 1px solid #eee;">
                     <uni-icons type="bottom" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>更多信息
                  </view>
                  <view class="part" @tap.stop="operations = operations==index?-1:index">
                     <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;"
                        size="14"></uni-icons>操作
                  </view>
               <view class="part" @tap.stop="operations = operations==index?-1:index">
                  <uni-icons type="more-filled" style="color: #888;margin-right: 10rpx;" size="14"></uni-icons>操作
               </view>
               <view class="op" v-if="operations == index">
                  <!--                <button class="op1" size="mini" plain @tap.stop="check(item)">审核</button>
            </view>
            <view class="op" v-if="operations == index">
<!--                <button class="op1" size="mini" plain @tap.stop="check(item)">审核</button>
               <button class="op2" size="mini" plain @tap.stop="antiCheck(item)">反审核</button> -->
                  <button class="op3" size="mini" plain @tap.stop="edit(item)">编辑</button>
                  <button class="op4" size="mini" plain @tap.stop="del(item)">删除</button>
                  <button class="op5" size="mini" plain @tap.stop="operations = -1">取消操作</button>
               </view>
            </uni-card>
               <button class="op3" size="mini" plain @tap.stop="edit(item)">编辑</button>
               <button class="op4" size="mini" plain @tap.stop="del(item)">删除</button>
               <button class="op5" size="mini" plain @tap.stop="operations = -1">取消操作</button>
            </view>
         </uni-card>
      </view>
      <view class="over" v-if="listData.length == 0">暂无数据</view>
      <view class="over" v-if="listData.length != 0 && listData.length != showList.length">加载中...</view>
      <view class="over" v-if="listData.length != 0 && listData.length == showList.length">已到底</view>
@@ -267,35 +185,33 @@
</template>
<script>
   import {
      getUserInfo
   } from "@/utils/auth.js";
   import { getUserInfo } from "@/utils/auth.js";
   export default {
      data() {
         return {
            userInfo: getUserInfo(),
            serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API',
            showmore: false,
            arrayStatus: ['全部', '未审核', '已审核', '已关闭'],
            hform: {
               HStatus: '全部',
               HBeginDate: '',
               HEndDate: '',
               HICMOBillNo: '',
               HBillNo: '',
               HProcExchBillNo: '',
               HNumber: '',
               HName: '',
       data() {
           return {
            userInfo:getUserInfo(),
            serverUrl: uni.getStorageSync('serverUrl')||'http://47.96.97.237/API',
            showmore:false,
            arrayStatus:['全部','未审核','已审核','已关闭'],
            hform:{
               HStatus:'全部',
               HBeginDate:'',
               HEndDate:'',
               HICMOBillNo:'',
               HBillNo:'',
               HProcExchBillNo:'',
               HNumber:'',
               HName:'',
            },
            sWhere: '',
            listData: [],
            showList: [],
            showDetail: -1,
            operations: -1,
            page: 1,
         }
      },
            sWhere:'',
            listData:[],
            showList:[],
            showDetail:-1,
            operations:-1,
            page:1,
           }
       },
      onLoad() {
         this.getList()
         // console.log(this.userInfo,uni.getStorageSync('HUserName'))
@@ -303,46 +219,46 @@
      onReachBottom: function() {
         this.page++
         setTimeout(() => {
            this.showList = this.showList.concat(this.getPage(this.page, this.listData))
            this.showList = this.showList.concat(this.getPage(this.page,this.listData))
         }, 100)
      },
      onPullDownRefresh: function() {
         this.clear()
         setTimeout(() => {
         setTimeout(()=>{
            uni.stopPullDownRefresh();
         }, 1000);
      },
      methods: {
         getPage(page, list) {
       methods: {
         getPage(page,list){
            let sindex = (parseInt(page) - 1) * 20
            let eindex = parseInt(page) * 20
            let newList = list.slice(sindex, eindex)
            let newList = list.slice(sindex,eindex)
            return newList
         },
         getList() {
         getList(){
            // console.log(this.sWhere)
            uni.showLoading({
               title: '加载中...'
               title:'加载中...'
            })
            uni.request({
               url: this.serverUrl + '/Cj_StationEntrustInBill/list',
               data: {
                url: this.serverUrl + '/Cj_StationEntrustInBill/list',
               data:{
                  sWhere: this.sWhere,
                  user: uni.getStorageSync('HUserName')
               },
               success: (res) => {
                  console.log(1, res.data.data);
                  if (res.data.count == 1) {
                success: (res) => {
                  console.log(1,res.data.data);
                  if(res.data.count == 1){
                     this.listData = res.data.data
                     this.showList = this.getPage(this.page, this.listData)
                     setTimeout(() => {
                        uni.hideLoading()
                     this.showList = this.getPage(this.page,this.listData)
                     setTimeout(()=>{
                          uni.hideLoading()
                     }, 1000)
                  } else {
                  }else{
                     uni.hideLoading()
                     uni.showToast({
                        title: res.data.Message,
                        icon: 'none'
                        title:res.data.Message,
                        icon:'none'
                     })
                  }
               },
@@ -350,145 +266,144 @@
                  console.log(res);
                  uni.hideLoading()
                  uni.showToast({
                     title: '接口请求失败',
                     icon: 'none'
                     title:'接口请求失败',
                     icon:'none'
                  })
               },
            });
         },
         //状态
         HStatusChange(e) {
         HStatusChange(e){
            console.log(e.detail.value)
            this.hform.HStatus = this.arrayStatus[e.detail.value]
         },
         //选择单据日期
         HBeginDateChange(e) {
         HBeginDateChange(e){
            console.log(e.detail.value)
            this.hform.HBeginDate = e.detail.value
         },
         //选择单据日期
         HEndDateChange(e) {
         HEndDateChange(e){
            console.log(e.detail.value)
            this.hform.HEndDate = e.detail.value
         },
         //搜索
         search() {
         search(){
            this.sWhere = ''
            this.listData = []
            this.page = 1
            this.showList = []
            console.log(this.hform)
            if (this.hform.HStatus) {
               if (this.hform.HStatus == '全部') {
                  this.sWhere += "";
               } else if (this.hform.HStatus == '未审核') {
                  this.sWhere += " and 审核人=''";
               } else if (this.hform.HStatus == '已审核') {
                  this.sWhere += " and 审核人<>''";
               } else if (this.hform.HStatus == '已关闭') {
                  this.sWhere += " and 关闭人<>''";
               }
                if(this.hform.HStatus == '全部'){
                   this.sWhere += "";
                }else if(this.hform.HStatus == '未审核'){
                   this.sWhere += " and 审核人=''";
                }else if(this.hform.HStatus == '已审核'){
                   this.sWhere += " and 审核人<>''";
                }else if(this.hform.HStatus == '已关闭'){
                   this.sWhere += " and 关闭人<>''";
                }
            }
            if (this.hform.BenginHCreateDate) {
               this.sWhere += " and CONVERT(varchar(100),日期, 23) >= '" + this.hform.BenginHCreateDate + "'";
                this.sWhere += " and CONVERT(varchar(100),日期, 23) >= '" + this.hform.BenginHCreateDate + "'";
            }
            if (this.hform.EndHCreateDate) {
               this.sWhere += " and CONVERT(varchar(100),日期, 23) >= '" + this.hform.EndHCreateDate + "'";
                this.sWhere += " and CONVERT(varchar(100),日期, 23) >= '" + this.hform.EndHCreateDate + "'";
            }
            if (this.hform.HBillNo) {
               this.sWhere += " and 单据号 like '%" + this.hform.HBillNo + "%'";
                this.sWhere += " and 单据号 like '%" + this.hform.HBillNo + "%'";
            }
            if (this.hform.HNumber) {
               this.sWhere += " and 产品代码 like '%" + this.hform.HNumber + "%'";
                this.sWhere += " and 产品代码 like '%" + this.hform.HNumber + "%'";
            }
            if (this.hform.HName) {
               this.sWhere += " and 工序 like '%" + this.hform.HName + "%'";
                this.sWhere += " and 工序 like '%" + this.hform.HName + "%'";
            }
            if (this.hform.HICMOBillNo) {
               this.sWhere += " and 生产订单号 like '%" + this.hform.HICMOBillNo + "%'";
                this.sWhere += " and 生产订单号 like '%" + this.hform.HICMOBillNo + "%'";
            }
            if (this.hform.HProcExchBillNo) {
               this.sWhere += " and 流转卡号 like '%" + this.hform.HProcExchBillNo + "%'";
                this.sWhere += " and 流转卡号 like '%" + this.hform.HProcExchBillNo + "%'";
            }
            this.getList()
         },
         //新增
         creat() {
         creat(){
            uni.navigateTo({
               url: '/pages/weiwaigxIn/form'
               url:'/pages/weiwaigxIn/form'
            })
         },
         //重置
         clear() {
         clear(){
            this.listData = []
            this.page = 1
            this.showList = []
            this.showmore = false
            this.sWhere = ''
            this.showDetail = -1,
               this.operations = -1,
               this.hform = {
                  HStatus: '全部',
                  HBeginDate: '',
                  HEndDate: '',
                  HICMOBillNo: '',
                  HBillNo: '',
                  HProcExchBillNo: '',
                  HNumber: '',
                  HName: '',
               }
            this.operations = -1,
            this.hform = {
               HStatus:'全部',
               HBeginDate:'',
               HEndDate:'',
               HICMOBillNo:'',
               HBillNo:'',
               HProcExchBillNo:'',
               HNumber:'',
               HName:'',
            }
            this.getList()
         },
         //编辑
         edit(item) {
         edit(item){
            console.log(item)
            uni.navigateTo({
               url: '/pages/weiwaigxIn/form?linterid=' + item.HInterID + '&HBillNo=' + item.单据号
               url:'/pages/weiwaigxIn/form?linterid=' + item.HInterID + '&HBillNo=' + item.单据号
            })
         },
         //删除
         del(item) {
         del(item){
            console.log(item)
            uni.showModal({
               title: '提示',
               content: '确认要删除吗,删除后不能恢复',
               success: (res) => {
                  if (res.confirm) {
                     console.log('用户点击确定');
                title: '提示',
                content: '确认要删除吗,删除后不能恢复',
                success: (res) => {
                    if (res.confirm) {
                        console.log('用户点击确定');
                     uni.request({
                        url: this.serverUrl +
                           '/Cj_StationEntrustInBill/del_StationEntrustInBill',
                        data: {
                         url: this.serverUrl + '/Cj_StationEntrustInBill/del_StationEntrustInBill',
                        data:{
                           HInterID: item.HInterID,
                           HDeleteMan: uni.getStorageSync('HUserName')
                        },
                        success: (res) => {
                           console.log(1, res);
                           if (res.data.count == 1) {
                         success: (res) => {
                             console.log(1,res);
                           if(res.data.count == 1){
                              this.clear()
                           }
                           uni.showToast({
                              title: res.data.Message,
                              icon: 'none'
                              title:res.data.Message,
                              icon:'none'
                           })
                        },
                        fail: (res) => {
                           console.log(res);
                           uni.showToast({
                              title: '接口请求失败',
                              icon: 'none'
                              title:'接口请求失败',
                              icon:'none'
                           })
                        },
                     });
                  } else if (res.cancel) {
                     console.log('用户点击取消');
                  }
               }
                    } else if (res.cancel) {
                        console.log('用户点击取消');
                    }
                }
            });
         },
         // //审核
@@ -502,163 +417,140 @@
         // },
         // //反审核
         // antiCheck(item){
         // },
      }
       }
   }
</script>
<style lang="scss" scoped>
   .form {
   .form{
      width: 640rpx;
      margin: 20rpx auto;
   }
   .other {
   .other{
      margin-top: 8rpx;
      text-align: center;
      font-size: 28rpx;
      padding: 4rpx 18rpx;
      color: #1890FF;
   }
   .form-item {
    .form-item{
      display: flex;
      align-items: center;
      font-size: 28rpx;
      padding: 6rpx 0;
      .title {
      .title{
         width: 180rpx;
         text {
         text{
            color: red;
            font-weight: bold;
         }
      }
      .right {
      .right{
         width: 450rpx;
         border-radius: 22rpx;
         border: 1px solid #acacac;
      }
      .righton {
      .righton{
         width: 450rpx;
         border-radius: 22rpx;
         border: 1px solid #e4e4e4;
         background-color: #e4e4e4;
      }
      input {
      input{
         width: 100%;
         padding: 8rpx 20rpx;
         font-size: 30rpx;
      }
   }
   .buttons {
   .buttons{
      width: 100%;
      display: flex;
      justify-content: center;
      margin-top: 20rpx;
      button {
      button{
         border-radius: 50rpx;
         width: 180rpx;
         height: 66rpx;
         line-height: 66rpx;
         font-size: 28rpx;
      }
      .btn-a {
      .btn-a{
         background-color: #acacac;
         color: #fff;
      }
      .btn-b {
      .btn-b{
         background-color: #41a863;
         color: #fff;
      }
      .btn-c {
      .btn-c{
         background-color: #3a78ff;
         color: #fff;
      }
   }
   .list {
   .list{
      width: 100%;
      .card-detail {
      .card-detail{
         width: 100%;
         display: flex;
         flex-wrap: wrap;
         justify-content: space-between;
         line-height: 120%;
         .detail {
         .detail{
            // width: 50%;
            font-size: 26rpx;
            margin-bottom: 12rpx;
            color: #555;
            margin-right: 20rpx;
            text {
            text{
               color: #999;
               font-size: 26rpx;
            }
         }
      }
      .more {
      .more{
         color: #888;
         font-size: 24rpx;
         display: flex;
         border-top: 1px solid #eee;
         padding-top: 20rpx;
         .part {
         .part{
            width: 50%;
            text-align: center;
         }
      }
      .op {
      .op{
         display: flex;
         justify-content: space-around;
         margin-top: 20rpx;
         button {
         button{
            padding: 0;
            width: 150rpx;
            font-size: 25rpx;
         }
         .op1 {
         .op1{
            border: 1px solid #41a863;
            color: #41a863;
         }
         .op2 {
         .op2{
            border: 1px solid #d98d00;
            color: #d98d00;
         }
         .op3 {
         .op3{
            border: 1px solid #3a78ff;
            color: #3a78ff;
         }
         .op4 {
         .op4{
            border: 1px solid #da0000;
            color: #da0000;
         }
         .op5 {
         .op5{
            border: 1px solid #888;
            color: #888;
         }
      }
   }
</style>
</style>