zhongtianhaoyuan 2 vuotta sitten
vanhempi
commit
895310993f

+ 0 - 1
public/static/payprint1.html

@@ -1131,7 +1131,6 @@
             printBig() {}
         },
         mounted() {
-            debugger
             this.date = new Date().toLocaleString()
                 // let _data = decodeURIComponent(this.getQueryVariable('dataList'))
             let _data = {}

+ 0 - 1
public/static/weightCheck.html

@@ -589,7 +589,6 @@
             printBig() {},
         },
         mounted() {
-            debugger
             let _data  ={}
             if(decodeURIComponent(localStorage.getItem('print_in_data'))){
                 _data=decodeURIComponent(localStorage.getItem('print_in_data'))

+ 914 - 828
src/views/contractManagement/purchaseContract.vue

@@ -7,8 +7,8 @@
         <ws-button type="primary" @click="handleAdd()"
           v-hasPermission="`contractManagement.buyContract.buyContractInfo.add`">添加</ws-button>
         <ws-button @click="exportlist()" v-hasPermission="
-            `contractManagement.buyContract.buyContractInfo.view`
-          ">导出</ws-button>
+          `contractManagement.buyContract.buyContractInfo.view`
+        ">导出</ws-button>
       </template>
       <template slot="right">
         <span style="width: 142px; display: inline-block; color: #8890b1">状态:</span>
@@ -69,33 +69,27 @@
       <el-table-column width='120' prop="completedQuantity" label="已完成(吨)">
         <template slot-scope="scope">
           <span style="color: #5473e8; font-weight: 600">{{
-            scope.row.completedQuantity
+              scope.row.completedQuantity
           }}</span>
         </template>
       </el-table-column>
       <el-table-column width='150' prop="status" label="状态">
         <template slot-scope="scope">
-          <div v-if="scope.row.status != '执行中'&&scope.row.status != '发运结束'">
+          <div v-if="scope.row.status != '执行中' && scope.row.status != '发运结束'">
             <!-- <span v-if="scope.row.approveStatus">{{
               scope.row.approveStatus
             }}</span> -->
-            <el-select v-if="scope.row.approveStatus" v-model="scope.row.approveStatus" placeholder="" class="statusselect"
-            @change='selectstatuschange($event,scope.row)'
-            disabled
-            :value="scope.row.approveStatus">
-            <el-option label="待决策人审核" value="待决策人审核"
-              style="color: #8890b1" />
-          </el-select>
-          <el-select v-else v-model="scope.row.status" placeholder="" class="statusselect"
-          :disabled="scope.row.status=='已完成'||scope.row.status=='已结算'||scope.row.status=='已驳回'"
-            @change='selectstatuschange($event,scope.row)'
-
-            :value="scope.row.status">
-            <el-option label="待执行" value="待执行"
-              style="color: #8890b1" />
-              <el-option label="执行中" value="执行中"
-              style="color: #8890b1" />
-          </el-select>
+            <el-select v-if="scope.row.approveStatus" v-model="scope.row.approveStatus" placeholder=""
+              class="statusselect" @change='selectstatuschange($event, scope.row)' disabled
+              :value="scope.row.approveStatus">
+              <el-option label="待决策人审核" value="待决策人审核" style="color: #8890b1" />
+            </el-select>
+            <el-select v-else v-model="scope.row.status" placeholder="" class="statusselect"
+              :disabled="scope.row.status == '已完成' || scope.row.status == '已结算' || scope.row.status == '已驳回'"
+              @change='selectstatuschange($event, scope.row)' :value="scope.row.status">
+              <el-option label="待执行" value="待执行" style="color: #8890b1" />
+              <el-option label="执行中" value="执行中" style="color: #8890b1" />
+            </el-select>
             <!-- <el-popover v-else placement="left" :width="285" trigger="click" visible-arrow="false"
               @show="history(scope.row)">
               <template>
@@ -128,23 +122,38 @@
           <div v-else>
             <!-- {{scope.row.status}} -->
             <el-select v-model="scope.row.status" placeholder="" class="statusselect"
-            @change='selectstatuschange($event,scope.row)'
-            :value="scope.row.status"
-          >
-            <el-option v-for="item in statusList" :key="item.value" :label="item.value" :value="item.value"
-              style="color: #8890b1" />
-          </el-select>
+              @change='selectstatuschange($event, scope.row)' :value="scope.row.status">
+              <el-option v-for="item in statusList" :key="item.value" :label="item.value" :value="item.value"
+                style="color: #8890b1" />
+            </el-select>
           </div>
         </template>
       </el-table-column>
       <el-table-column width='120' prop="signingDate" label="签订日期"> </el-table-column>
       <el-table-column width='120' prop="contractExpenditure" label="合同支出"> </el-table-column>
       <el-table-column width='120' prop="expenses" label="费用支出"> </el-table-column>
-      
+
       <el-table-column width='130' prop="mildewGrain" label="已付款(元)">
       </el-table-column>
       <el-table-column prop="amountEdPayable" label="已付运费"> </el-table-column>
+      <el-table-column prop="statementUrl" label="结算单">
+        <template slot-scope="scope">
+          <img width="18" height="20" style="vertical-align: text-top; position: relative; top: -1px"
+            src="../../../public/img/fujian.png" @click="settlement(scope.row)" alt="" />
+          <span v-if="scope.row.statementUrl != null">
+            {{ scope.row.statementUrl? scope.row.statementUrl.split(",").length : "" }}
+          </span>
+        </template>
+      </el-table-column>
       <el-table-column width='130' prop="goodsNames" label="已开发票 (元)">
+        <template slot-scope="scope">
+          {{scope.row.goodsNames}}
+          <img width="18" height="20" style="vertical-align: text-top; position: relative; top: -1px"
+            src="../../../public/img/fujian.png" @click="invoiceUploade(scope.row)" alt="" />
+          <span v-if="scope.row.invoiceUrl != null">
+            {{ scope.row.invoiceUrl? scope.row.invoiceUrl.split(",").length : "" }}
+          </span>
+        </template>
       </el-table-column>
       <el-table-column prop="addressUrl" label="附件">
         <template slot-scope="scope">
@@ -152,16 +161,16 @@
             src="../../../public/img/fujian.png" @click="fujian(scope.row)" alt="" />
           <span v-if="scope.row.addressUrlArray != null">
             {{
-              scope.row.addressUrlArray.length == 0
-                ? ''
-                : scope.row.addressUrlArray.length
+                scope.row.addressUrlArray.length == 0
+                  ? ''
+                  : scope.row.addressUrlArray.length
             }}
           </span>
         </template>
       </el-table-column>
       <el-table-column prop="address" label="操作" width="160">
         <template slot-scope="scope">
-           <!-- <img width="16" height="17" style="
+          <!-- <img width="16" height="17" style="
                 vertical-align: text-top;
                 position: relative;
                 top: -1px;
@@ -170,15 +179,15 @@
                v-hasPermission="
               `contractManagement.nonContract.nonContractInfo.view`"
              @click="handlecost(scope.row)" alt="" /> -->
-             
+
           <img width="16" height="16" style="vertical-align: text-top; margin: 0 6px"
             src="../../../public/img/chakan.png" @click="handleExamine(scope.row)" v-hasPermission="
               `contractManagement.buyContract.buyContractInfo.view`
             " alt="" />
           <div v-if="
-              (scope.row.approveStatus != '待决策人审核' &&
-                !scope.row.approveStatus)
-            " style="display: inline-block">
+            (scope.row.approveStatus != '待决策人审核' &&
+              !scope.row.approveStatus)
+          " style="display: inline-block">
             <img width="17" height="16" style="vertical-align: text-top; margin: 0 6px"
               src="../../../public/img/bianji.png" @click="handleEdit(scope.row)" v-hasPermission="
                 `contractManagement.buyContract.buyContractInfo.edit`
@@ -189,24 +198,47 @@
               position: relative;
               top: -1px;
               margin: 0 6px;
-            " v-if="scope.row.status == '待执行'&&!scope.row.approveStatus||scope.row.status == '已驳回'" src="../../../public/img/shanchu.png"
-            v-hasPermission="
+            " v-if="scope.row.status == '待执行' && !scope.row.approveStatus || scope.row.status == '已驳回'"
+            src="../../../public/img/shanchu.png" v-hasPermission="
               `contractManagement.buyContract.buyContractInfo.delete`
             " @click="handleDelete(scope.row)" alt="" />
         </template>
       </el-table-column>
     </el-table>
-    <el-pagination  :page-sizes="[10, 30, 50, 100, 500, 1000, 9999]" @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
-      :page-size="deptCircularPage.pageSize" layout="total, sizes, prev, pager, next, jumper" :total="deptBudgetTotal">
+    <el-pagination :page-sizes="[10, 30, 50, 100, 500, 1000, 9999]" @size-change="handleSizeChange"
+      @current-change="handleCurrentChange" :current-page="currentPage" :page-size="deptCircularPage.pageSize"
+      layout="total, sizes, prev, pager, next, jumper" :total="deptBudgetTotal">
     </el-pagination>
 
+    <!-- 附件 -->
     <WinseaContentModal v-model="accessoryTFs" :title="$t('system.noticeCircular.information')"
       @on-cancel="handleClose">
-        <div v-if="applstatus">
-      <ws-upload ref="upload" :size-limit="size" @onChange="onChange" :comp-id="compId" :appendix-ids="appendixIdss"
-        accept=".jpg, .jpeg, .png, .pdf, .doc, .docx, .zip, .rar" 
-        v-hasPermission="`contractManagement.buyContract.buyContractInfo.appl`"
-        />
+      <div v-if="applstatus">
+        <ws-upload ref="upload" :size-limit="size" @onChange="onChange" :comp-id="compId" :appendix-ids="appendixIdss"
+          accept=".jpg, .jpeg, .png, .pdf, .doc, .docx, .zip, .rar"
+          v-hasPermission="`contractManagement.buyContract.buyContractInfo.appl`" />
+      </div>
+      <ws-upload v-else ref="upload" :comp-id="compId" :appendix-ids="appendixIdss" :editable="false"
+        accept=".jpg, .jpeg, .png, .pdf, .doc, .zip, .rar" />
+    </WinseaContentModal>
+    <!-- 结算单 -->
+    <WinseaContentModal v-model="countMoney" title="结算单信息"
+      @on-cancel="handleClose">
+      <div v-if="applstatus">
+        <ws-upload ref="upload" :size-limit="size" @onChange="onChange1" :comp-id="compId" :appendix-ids="appendixIdss"
+          accept=".jpg, .jpeg, .png, .pdf, .doc, .docx, .zip, .rar"
+          v-hasPermission="`contractManagement.buyContract.buyContractInfo.jiedan`" />
+      </div>
+      <ws-upload v-else ref="upload" :comp-id="compId" :appendix-ids="appendixIdss" :editable="false"
+        accept=".jpg, .jpeg, .png, .pdf, .doc, .zip, .rar" />
+    </WinseaContentModal>
+     <!-- 上传已开发票  -->
+     <WinseaContentModal v-model="invoiceSwitch" title="发票信息"
+      @on-cancel="handleClose">
+      <div v-if="applstatus">
+        <ws-upload ref="upload" :size-limit="size" @onChange="onChange2" :comp-id="compId" :appendix-ids="appendixIdss"
+          accept=".jpg, .jpeg, .png, .pdf, .doc, .docx, .zip, .rar"
+          v-hasPermission="`contractManagement.buyContract.buyContractInfo.fapiao`" />
       </div>
       <ws-upload v-else ref="upload" :comp-id="compId" :appendix-ids="appendixIdss" :editable="false"
         accept=".jpg, .jpeg, .png, .pdf, .doc, .zip, .rar" />
@@ -214,840 +246,894 @@
   </div>
 </template>
 <script>
-  import {
-    getList,
-    export1,
-    editstatus,
-    billoperatehis,
-    deletecontract,
-    editInfo,
-    getsettlementprice
-  } from '@/model/contarct/index'
-  import {
-    downloadFile
-  } from '@/utils/batchDown'
-  import { hasPermission } from '../../utils/getHasPermission'
-  import Pagination from '@/components/Pagination'
-  import WsUpload from '@/components/WsUpload'
-  import {
-    dayjs,
-    EventBus
-  } from 'base-core-lib'
-  export default {
-    name: 'viewSpareMoney',
-    components: {
-      WsUpload,
-      Pagination,
+import {
+  getList,
+  export1,
+  editstatus,
+  billoperatehis,
+  deletecontract,
+  editInfo,
+  getsettlementprice
+} from '@/model/contarct/index'
+import {
+  downloadFile
+} from '@/utils/batchDown'
+import { hasPermission } from '../../utils/getHasPermission'
+import Pagination from '@/components/Pagination'
+import WsUpload from '@/components/WsUpload'
+import {
+  dayjs,
+  EventBus
+} from 'base-core-lib'
+export default {
+  name: 'viewSpareMoney',
+  components: {
+    WsUpload,
+    Pagination,
+  },
+  watch: {
+    vesselId(val) {
+      this.getList()
     },
-    watch: {
-      vesselId(val) {
-        this.getList()
-      },
-      isShow(val) {
-        this.showType = val
-      },
+    isShow(val) {
+      this.showType = val
     },
-    data() {
-      return {
-        id: '',
-        //弹出框
-        dialogViewSpareMoney: false,
-        dialogApproveFormVisible: false,
-        // 船舶类型
-        monetaryKey: null,
-        // 表格显示数据
-        tableDate: [],
-        size: 10,
-        statusList:[{
-          value:'已完成',
-        },{value:'发运结束',}],
-        // 是否显示
-        showType: true,
-        // 年
-        year: '',
-        deliver_type: 1,
-        deptBudgetTotal: 0,
-        currentPage: 1,
-        pageSize: 9999,
-        appendixIdsAdd: '',
-        searchType: 1,
-        searchTypeText: '未完成',
-        searchKeyWord: '',
-        contractType: 2,
-        goodsType: 1,
-        startDate: null,
-        endDate: null,
-        addressUrls: [],
-        accesscard: false,
-        // 提交类型
-        submitType: true,
-        deptCircularPage: {},
-        date: {
-          year: dayjs().format('YYYY'),
-          month: dayjs().format('MM'),
+  },
+  data() {
+    return {
+      id: '',
+      //弹出框
+      dialogViewSpareMoney: false,
+      dialogApproveFormVisible: false,
+      // 船舶类型
+      monetaryKey: null,
+      // 表格显示数据
+      tableDate: [],
+      size: 10,
+      statusList: [{
+        value: '已完成',
+      }, { value: '发运结束', }],
+      // 是否显示
+      showType: true,
+      // 年
+      year: '',
+      deliver_type: 1,
+      deptBudgetTotal: 0,
+      currentPage: 1,
+      pageSize: 9999,
+      appendixIdsAdd: '',
+      searchType: 1,
+      searchTypeText: '未完成',
+      searchKeyWord: '',
+      contractType: 2,
+      goodsType: 1,
+      startDate: null,
+      endDate: null,
+      addressUrls: [],
+      accesscard: false,
+      // 提交类型
+      submitType: true,
+      deptCircularPage: {},
+      date: {
+        year: dayjs().format('YYYY'),
+        month: dayjs().format('MM'),
+      },
+      contractList: [],
+      deptBudgetList: {},
+      historyList: [],
+      appendixIdss: [],
+      fileList: [],
+      compId: localStorage.getItem('ws-pf_compId'),
+      pickerBeginDateBefore: {
+        disabledDate: (time) => {
+          return time.getTime() > Date.now()
         },
-        contractList: [],
-        deptBudgetList: {},
-        historyList: [],
-        appendixIdss: [],
-        fileList: [],
-        compId: localStorage.getItem('ws-pf_compId'),
-        pickerBeginDateBefore: {
-          disabledDate: (time) => {
-            return time.getTime() > Date.now()
+      },
+      accessoryTFs: false,//附件
+      countMoney:false,//结算单
+      invoiceSwitch:false,//发票上传
+      taskTypeList: [{
+        value: '未完成',
+        type: 1,
+      },
+      {
+        value: '已完成',
+        type: 2,
+      },
+      {
+        value: '审批中',
+        type: 4,
+      },
+      {
+        value: '全部合同',
+        type: '',
+      },
+      ],
+      pickerOptions: {
+        shortcuts: [{
+          text: '本周',
+          onClick(picker) {
+            const end = new Date()
+            const start = new Date()
+            var thisDay = start.getDay()
+            var thisDate = start.getDate()
+            if (thisDay != 0) {
+              start.setDate(thisDate - thisDay)
+            }
+            picker.$emit('pick', [start, end])
           },
         },
-        accessoryTFs: false,
-        taskTypeList: [{
-            value: '未完成',
-            type: 1,
-          },
-          {
-            value: '已完成',
-            type: 2,
-          },
-           {
-            value: '审批中',
-            type: 4,
+        {
+          text: '本月',
+          onClick(picker) {
+            const end = new Date()
+            const start = new Date()
+            start.setDate(1)
+            picker.$emit('pick', [start, end])
           },
-          {
-            value: '全部合同',
-            type: '',
+        },
+        {
+          text: '本季度',
+          onClick(picker) {
+            var oDate = new Date()
+
+            var thisYear = oDate.getFullYear()
+            var thisMonth = oDate.getMonth() + 1
+
+            var n = Math.ceil(thisMonth / 3) // 季度
+
+            var Month = n * 3 - 1
+
+            var start = new Date(thisYear, Month - 2, 1)
+            var end = new Date()
+
+            picker.$emit('pick', [start, end])
           },
+        },
         ],
-        pickerOptions: {
-          shortcuts: [{
-              text: '本周',
-              onClick(picker) {
-                const end = new Date()
-                const start = new Date()
-                var thisDay = start.getDay()
-                var thisDate = start.getDate()
-                if (thisDay != 0) {
-                  start.setDate(thisDate - thisDay)
-                }
-                picker.$emit('pick', [start, end])
-              },
-            },
-            {
-              text: '本月',
-              onClick(picker) {
-                const end = new Date()
-                const start = new Date()
-                start.setDate(1)
-                picker.$emit('pick', [start, end])
-              },
-            },
-            {
-              text: '本季度',
-              onClick(picker) {
-                var oDate = new Date()
-
-                var thisYear = oDate.getFullYear()
-                var thisMonth = oDate.getMonth() + 1
-
-                var n = Math.ceil(thisMonth / 3) // 季度
-
-                var Month = n * 3 - 1
-
-                var start = new Date(thisYear, Month - 2, 1)
-                var end = new Date()
-
-                picker.$emit('pick', [start, end])
-              },
-            },
-          ],
+      },
+      applstatus: false,
+      value1: '',
+      value2: '',
+    }
+  },
+  activated() {
+
+    this.applstatus = hasPermission('contractManagement.buyContract.buyContractInfo.appl')
+    console.log(this.applstatus)
+    //cg.viewBudget
+    //cg.viewSpareMoney
+    // this.getVesselData();
+    this.getList()
+    this.showType = this.isShow
+  },
+  methods: {
+    handlecost(row) {
+      this.$router.push({
+        name: 'buyContractcost',
+        query: {
+          id: row.id,
+          contractNo: row.contractNo,
+          status: row.status,
+          seller: row.seller
         },
-        applstatus:false,
-        value1: '',
-        value2: '',
-      }
+      })
     },
-    activated() {
-      
-      this.applstatus=hasPermission('contractManagement.buyContract.buyContractInfo.appl')
-      console.log(this.applstatus)
-      //cg.viewBudget
-      //cg.viewSpareMoney
-      // this.getVesselData();
-      this.getList()
-      this.showType = this.isShow
+    onChange() {
+      this.$refs.upload
+        .handleSaveBill()
+        .then(async (response) => {
+          this.deptBudgetList.addressUrl = response
+          this.deptBudgetList.id = this.id
+          this.deptBudgetList.flag = 1
+          editInfo(this.deptBudgetList)
+            .toPromise()
+            .then((response) => {
+              this.accessoryTFs = false
+              this.$message.success('上传成功')
+              this.getList()
+            })
+        })
+        .catch((res) => {
+          EventBus.$emit('error', (JSON.parse(res) || {}).message)
+          this.$refs.upload.clearFiles()
+        })
     },
-    methods: {
-      handlecost(row){
-         this.$router.push({
-          name: 'buyContractcost',
-          query: {
-            id: row.id,
-            contractNo: row.contractNo,
-            status:row.status,
-            seller:row.seller
-          },
+    onChange1() {
+      this.$refs.upload
+        .handleSaveBill()
+        .then(async (response) => {
+          this.deptBudgetList.statementUrl = response
+          this.deptBudgetList.id = this.id
+          this.deptBudgetList.flag = 1
+          editInfo(this.deptBudgetList)
+            .toPromise()
+            .then((response) => {
+              this.countMoney = false
+              this.$message.success('上传成功')
+              this.getList()
+            })
         })
-      },
-      onChange() {
-        this.$refs.upload
-          .handleSaveBill()
-          .then(async (response) => {
-            this.deptBudgetList.addressUrl = response
-            this.deptBudgetList.id = this.id
-            this.deptBudgetList.flag = 1
-            editInfo(this.deptBudgetList)
-              .toPromise()
-              .then((response) => {
-                this.accessoryTFs = false
-                this.$message.success('上传成功')
-                this.getList()
-              })
-          })
-          .catch((res) => {
-            EventBus.$emit('error', (JSON.parse(res) || {}).message)
-            this.$refs.upload.clearFiles()
-          })
-      },
-      dateFormat(fmt, date) {
-        let ret
-        const opt = {
-          'Y+': date.getFullYear().toString(), // 年
-          'm+': (date.getMonth() + 1).toString(), // 月
-          'd+': date.getDate().toString(), // 日
-          'H+': date.getHours().toString(), // 时
-          // "M+": date.getMinutes().toString(),         // 分
-          // "S+": date.getSeconds().toString()          // 秒
-          // 有其他格式化字符需求可以继续添加,必须转化成字符串
-        }
-        for (let k in opt) {
-          ret = new RegExp('(' + k + ')').exec(fmt)
-          if (ret) {
-            fmt = fmt.replace(
-              ret[1],
-              ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, '0')
-            )
-          }
+        .catch((res) => {
+          EventBus.$emit('error', (JSON.parse(res) || {}).message)
+          this.$refs.upload.clearFiles()
+        })
+    },
+    onChange2() {
+      this.$refs.upload
+        .handleSaveBill()
+        .then(async (response) => {
+          this.deptBudgetList.invoiceUrl = response
+          this.deptBudgetList.id = this.id
+          this.deptBudgetList.flag = 1
+          editInfo(this.deptBudgetList)
+            .toPromise()
+            .then((response) => {
+              this.invoiceSwitch = false
+              this.$message.success('上传成功')
+              this.getList()
+            })
+        })
+        .catch((res) => {
+          EventBus.$emit('error', (JSON.parse(res) || {}).message)
+          this.$refs.upload.clearFiles()
+        })
+    },
+    dateFormat(fmt, date) {
+      let ret
+      const opt = {
+        'Y+': date.getFullYear().toString(), // 年
+        'm+': (date.getMonth() + 1).toString(), // 月
+        'd+': date.getDate().toString(), // 日
+        'H+': date.getHours().toString(), // 时
+        // "M+": date.getMinutes().toString(),         // 分
+        // "S+": date.getSeconds().toString()          // 秒
+        // 有其他格式化字符需求可以继续添加,必须转化成字符串
+      }
+      for (let k in opt) {
+        ret = new RegExp('(' + k + ')').exec(fmt)
+        if (ret) {
+          fmt = fmt.replace(
+            ret[1],
+            ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, '0')
+          )
         }
-        return fmt
-      },
+      }
+      return fmt
+    },
 
-      handleClose() {
-        this.dialogViewSpareMoney = false
-      },
-      selectstatuschange(e,row){
-        var data={}
-        var text=`是否将状态改为${e}`
-        getsettlementprice({contractNo:row.contractNo}).toPromise()
+    handleClose() {
+      this.dialogViewSpareMoney = false
+      this.countMoney = false
+      this.invoiceSwitch = false
+    },
+    selectstatuschange(e, row) {
+      var data = {}
+      var text = `是否将状态改为${e}`
+      getsettlementprice({ contractNo: row.contractNo }).toPromise()
         .then((response) => {
-                if(e=='发运结束'){
-          data={id: row.id,endFlag:1}
-        }else if(e=='已完成'){
-          data={id:row.id,settlementPrice:response}
-          text=`合同单价${response}元/吨,确定合同已完成?`
-        }else{
-          data={id: row.id}
-        }
-        
-        this.$confirm(text, {
+          if (e == '发运结束') {
+            data = { id: row.id, endFlag: 1 }
+          } else if (e == '已完成') {
+            data = { id: row.id, settlementPrice: response }
+            text = `合同单价${response}元/吨,确定合同已完成?`
+          } else {
+            data = { id: row.id }
+          }
+
+          this.$confirm(text, {
             confirmButtonText: '确定',
             cancelButtonText: '取消',
             type: 'warning',
           })
-          .then(() => {
-            editstatus(data)
-              .toPromise()
-              .then((response) => {
-                this.$notify.success({
-                  title: '成功',
-                  message: '状态修改成功',
+            .then(() => {
+              editstatus(data)
+                .toPromise()
+                .then((response) => {
+                  this.$notify.success({
+                    title: '成功',
+                    message: '状态修改成功',
+                  })
+                  this.getList()
                 })
-                this.getList()
-              })
-              .catch((response) => {
-                // EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
-              })
-          })
-          .catch(() => {
-            row.status=row.currectstatus
-            return false
-          })
-          })
-          .catch((response) => {
-                // EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
-          })
-        
-      },
-      handleSizeChange(val) {
-        console.log(`每页 ${val} 条`)
-        this.pageSize = val
-        this.getList()
-      },
-      handleCurrentChange(val) {
-        this.currentPage = val
-        console.log(`当前页: ${val}`)
-        this.getList()
-      },
-      getList() {
-        getList({
-            compId: localStorage.getItem('ws-pf_compId'),
-            contractType: this.contractType,
-            goodsType: this.goodsType,
-            currentPage: this.currentPage,
-            pageSize: this.pageSize,
-            searchType: this.searchType,
-            searchKeyWord: this.searchKeyWord,
-            startDate: this.startDate,
-            endDate: this.endDate,
-            contrPage: this.contrPage,
-          })
-          .toPromise()
-          .then((response) => {
-            for (var i = 0; i < response.records.length; i++) {
-              if(response.records[i].status){
-                response.records[i].currectstatus=response.records[i].status
-              }
-              if (response.records[i].completedQuantity) {
-                response.records[i].completedQuantity = response.records[i].completedQuantity.toFixed(3)
-              }
+                .catch((response) => {
+                  // EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
+                })
+            })
+            .catch(() => {
+              row.status = row.currectstatus
+              return false
+            })
+        })
+        .catch((response) => {
+          // EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
+        })
 
-              if (response.records[i].addressUrl != null) {
-                if (response.records[i].addressUrl) {
-                  response.records[i].addressUrlArray =
-                    response.records[i].addressUrl.split(',')
-                }
-              } else {
-                response.records[i].addressUrlArray = []
-              }
+    },
+    handleSizeChange(val) {
+      console.log(`每页 ${val} 条`)
+      this.pageSize = val
+      this.getList()
+    },
+    handleCurrentChange(val) {
+      this.currentPage = val
+      console.log(`当前页: ${val}`)
+      this.getList()
+    },
+    getList() {
+      getList({
+        compId: localStorage.getItem('ws-pf_compId'),
+        contractType: this.contractType,
+        goodsType: this.goodsType,
+        currentPage: this.currentPage,
+        pageSize: this.pageSize,
+        searchType: this.searchType,
+        searchKeyWord: this.searchKeyWord,
+        startDate: this.startDate,
+        endDate: this.endDate,
+        contrPage: this.contrPage,
+      })
+        .toPromise()
+        .then((response) => {
+          for (var i = 0; i < response.records.length; i++) {
+            if (response.records[i].status) {
+              response.records[i].currectstatus = response.records[i].status
             }
-            this.deptCircularPage.currentPage = response.current
-            this.deptCircularPage.pageSize = response.size
-            this.deptBudgetTotal = response.total
-            this.contractList = response
-            for (var i = 0; i < response.records.length; i++) {
-              var arr = new Array()
-              this.addressUrls[i] = new Array()
-              if (this.contractList.records[i].addressUrl != null) {
-                arr = this.contractList.records[i].addressUrl.split(',')
-                this.addressUrls[i] = arr
-              }
+            if (response.records[i].completedQuantity) {
+              response.records[i].completedQuantity = response.records[i].completedQuantity.toFixed(3)
             }
-          })
-      },
-      // 上传附件
-      uploadSuccess(data, files, url) {
-        console.log(data, files, url)
-
-        // this.deptBudgetList.
-        // this.formData.append('files', files)
-        // this.feedbackObj.uploadNameAttachment = data.appendixName
-        // this.feedbackObj.pathUploadAttachment = data.appendixPath
-        // // this.newAppendixs = files
-        // this.onChangeFlag = true
-      },
-      editClick(row) {
-        var status = ''
-        if (row.status == '待执行' || row.status == '已完成') {
-          status = '执行中'
-        } else if (row.status == '执行中'||row.status == '发运结束') {
-          status = '已完成'
-        }
-        this.$confirm(`是否将状态改为${status}`, '提示', {
-            confirmButtonText: '确定',
-            cancelButtonText: '取消',
-            type: 'warning',
-          })
-          .then(() => {
-            editstatus({
-                id: row.id,
-              })
-              .toPromise()
-              .then((response) => {
-                this.$notify.success({
-                  title: '成功',
-                  message: '状态修改成功',
-                })
-                this.getList()
-              })
-              .catch((response) => {
-                // EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
-              })
-          })
-          .catch(() => {
 
-            return false
-          })
-      },
-      selecttaskType(e) {
-        for (var i = 0; i < this.taskTypeList.length; i++) {
-          if (this.taskTypeList[i].value == e) {
-            this.searchType = this.taskTypeList[i].type
-            this.find()
+            if (response.records[i].addressUrl != null) {
+              if (response.records[i].addressUrl) {
+                response.records[i].addressUrlArray =
+                  response.records[i].addressUrl.split(',')
+              }
+            } else {
+              response.records[i].addressUrlArray = []
+            }
+          }
+          this.deptCircularPage.currentPage = response.current
+          this.deptCircularPage.pageSize = response.size
+          this.deptBudgetTotal = response.total
+          this.contractList = response
+          for (var i = 0; i < response.records.length; i++) {
+            var arr = new Array()
+            this.addressUrls[i] = new Array()
+            if (this.contractList.records[i].addressUrl != null) {
+              arr = this.contractList.records[i].addressUrl.split(',')
+              this.addressUrls[i] = arr
+            }
           }
-        }
-      },
-      fujian(row) {
-        this.id = row.id
-        this.accessoryTFs = true
-        this.appendixIdss = row.addressUrl
-        console.log(this.appendixIdss)
-      },
-      handleExamine(row) {
-        console.log(row)
-        this.$router.push({
-          name: 'purchaseContractExamine',
-          query: {
-            id: row.id,
-            status: row.status,
-          },
-        })
-      },
-      handleAdd() {
-        this.$router.push({
-          path: 'purchaseContractAdd',
-        })
-      },
-      handleEdit(row) {
-        this.$router.push({
-          name: 'purchaseContractEdit',
-          query: {
-            id: row.id,
-          },
         })
-      },
-      // 关闭 dialog时 处理文件url 初始化upload组件
-      history(row) {
-        console.log(row)
-        billoperatehis({
+    },
+    // 上传附件
+    uploadSuccess(data, files, url) {
+      console.log(data, files, url)
+
+      // this.deptBudgetList.
+      // this.formData.append('files', files)
+      // this.feedbackObj.uploadNameAttachment = data.appendixName
+      // this.feedbackObj.pathUploadAttachment = data.appendixPath
+      // // this.newAppendixs = files
+      // this.onChangeFlag = true
+    },
+    editClick(row) {
+      var status = ''
+      if (row.status == '待执行' || row.status == '已完成') {
+        status = '执行中'
+      } else if (row.status == '执行中' || row.status == '发运结束') {
+        status = '已完成'
+      }
+      this.$confirm(`是否将状态改为${status}`, '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning',
+      })
+        .then(() => {
+          editstatus({
             id: row.id,
           })
-          .toPromise()
-          .then((response) => {
-            this.historyList = response
-          })
-      },
-      find() {
-        if (this.value2) {
-          this.startDate = this.dateFormat('YYYY-mm-dd', this.value2[0])
-          this.endDate = this.dateFormat('YYYY-mm-dd', this.value2[1])
-        } else {
-          this.startDate = ''
-          this.endDate = ''
-        }
-        this.currentPage = 1
-        this.getList()
-      },
-      async exportlist() {
-        const {
-          data
-        } = await export1({
-          compId: localStorage.getItem('ws-pf_compId'),
-          contractType: this.contractType,
-          goodsType: this.goodsType,
-          currentPage: this.currentPage,
-          pageSize: this.pageSize,
-          searchType: this.searchType,
-          searchKeyWord: this.searchKeyWord,
-          startDate: this.startDate,
-          endDate: this.endDate,
-        }, {}, {
-          responseType: 'blob',
-        }).toPromise()
-        downloadFile({
-          res: data,
-          fileName: `${
-          this.date.year + (this.date.month ? `-${this.date.month}` : '')
-        }_采购合同`,
-          type: 'xls',
+            .toPromise()
+            .then((response) => {
+              this.$notify.success({
+                title: '成功',
+                message: '状态修改成功',
+              })
+              this.getList()
+            })
+            .catch((response) => {
+              // EventBus.$emit('error', this.$t('showMessage.asteriskRequired'))
+            })
         })
-      },
-      // deletecontract(){},
-      //删除
-      handleDelete(row) {
-        var text = ''
-        if (row.deliverType == 1) {
-          text =
-            '删除该合同将同时永久删除合同对应的临时仓库相关数据,是否确定删除?'
-        } else {
-          text = '合同删除后不可恢复,是否继续删除?'
+        .catch(() => {
+
+          return false
+        })
+    },
+    selecttaskType(e) {
+      for (var i = 0; i < this.taskTypeList.length; i++) {
+        if (this.taskTypeList[i].value == e) {
+          this.searchType = this.taskTypeList[i].type
+          this.find()
         }
-        this.$confirm(text, '提示', {
-            confirmButtonText: '确定',
-            cancelButtonText: '取消',
-            type: 'warning',
+      }
+    },
+    fujian(row) {
+      this.id = row.id
+      this.accessoryTFs = true
+      this.appendixIdss = row.addressUrl
+      console.log(this.appendixIdss)
+    },
+    settlement(row){
+      this.id = row.id
+      this.countMoney = true
+      this.appendixIdss = row.statementUrl
+    },
+    invoiceUploade(row){
+      this.id = row.id
+      this.invoiceSwitch = true
+      this.appendixIdss = row.invoiceUrl
+    },
+    handleExamine(row) {
+      console.log(row)
+      this.$router.push({
+        name: 'purchaseContractExamine',
+        query: {
+          id: row.id,
+          status: row.status,
+        },
+      })
+    },
+    handleAdd() {
+      this.$router.push({
+        path: 'purchaseContractAdd',
+      })
+    },
+    handleEdit(row) {
+      this.$router.push({
+        name: 'purchaseContractEdit',
+        query: {
+          id: row.id,
+        },
+      })
+    },
+    // 关闭 dialog时 处理文件url 初始化upload组件
+    history(row) {
+      console.log(row)
+      billoperatehis({
+        id: row.id,
+      })
+        .toPromise()
+        .then((response) => {
+          this.historyList = response
+        })
+    },
+    find() {
+      if (this.value2) {
+        this.startDate = this.dateFormat('YYYY-mm-dd', this.value2[0])
+        this.endDate = this.dateFormat('YYYY-mm-dd', this.value2[1])
+      } else {
+        this.startDate = ''
+        this.endDate = ''
+      }
+      this.currentPage = 1
+      this.getList()
+    },
+    async exportlist() {
+      const {
+        data
+      } = await export1({
+        compId: localStorage.getItem('ws-pf_compId'),
+        contractType: this.contractType,
+        goodsType: this.goodsType,
+        currentPage: this.currentPage,
+        pageSize: this.pageSize,
+        searchType: this.searchType,
+        searchKeyWord: this.searchKeyWord,
+        startDate: this.startDate,
+        endDate: this.endDate,
+      }, {}, {
+        responseType: 'blob',
+      }).toPromise()
+      downloadFile({
+        res: data,
+        fileName: `${this.date.year + (this.date.month ? `-${this.date.month}` : '')
+          }_采购合同`,
+        type: 'xls',
+      })
+    },
+    // deletecontract(){},
+    //删除
+    handleDelete(row) {
+      var text = ''
+      if (row.deliverType == 1) {
+        text =
+          '删除该合同将同时永久删除合同对应的临时仓库相关数据,是否确定删除?'
+      } else {
+        text = '合同删除后不可恢复,是否继续删除?'
+      }
+      this.$confirm(text, '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning',
+      })
+        .then(() => {
+          deletecontract({
+            id: row.id,
           })
-          .then(() => {
-            deletecontract({
-                id: row.id,
+            .toPromise()
+            .then((response) => {
+              this.$notify.success({
+                title: '成功',
+                message: '删除成功',
               })
-              .toPromise()
-              .then((response) => {
-                this.$notify.success({
-                  title: '成功',
-                  message: '删除成功',
-                })
-                this.getList()
-              })
-              .catch((response) => {})
-          })
-          .catch(() => {
-            return false
-          })
-      },
+              this.getList()
+            })
+            .catch((response) => { })
+        })
+        .catch(() => {
+          return false
+        })
     },
-  }
+  },
+}
 </script>
 <style lang="scss" scoped>
-  .vertical-text-left {
-    width: 62px;
-    text-align: right;
-  }
-
-  .flex {
-    display: flex;
-  }
-
-  .el-range-editor.el-input__inner {
-    margin-left: 10px;
-  }
-
-  /deep/.base_header_layout .grid-content.right .find.el-button--primary {
-    width: 30px;
-    margin-left: -10px;
-    border-top-left-radius: 0px;
-    border-bottom-left-radius: 0px;
-  }
-
-  .el-button--primary {
-    background-color: #5878e8;
-    border-color: #5878e8;
-  }
-
-  .el-button--default {
-    border: 1px solid #5473e8;
-    color: #5473e8;
-  }
-
-  // .warning {
-  //   width: 100%;
-  //   height: 2px;
-  //   background: red;
-  // }
-
-  .executory,
-  .inExecution,
-  .done {
-    width: 6px;
-    height: 6px;
-    display: inline-block;
-    border-radius: 50%;
-    position: relative;
-    top: -1px;
-  }
-
-  .executory {
-    background: #ff9f24;
-  }
-
-  .inExecution {
-    background: #5878e8;
-  }
-
-  .done {
-    background: #50cad4;
-  }
-
-  // .top-grade {
-  //   background: linear-gradient(90deg, #5678e9, #7993f6);
-  //   color: #fff;
-  //   padding: 3px;
-  //   border-radius: 2px;
-  // }
-
-  // .second-class {
-  //   background: linear-gradient(90deg, #50cdd9, #82e2ea);
-  //   color: #fff;
-  //   padding: 3px;
-  //   border-radius: 2px;
-  // }
-
-  // .third-class {
-  //   background: linear-gradient(90deg, #ffa735, #ffbf70);
-  //   color: #fff;
-  //   padding: 3px;
-  //   border-radius: 2px;
-  // }
-
-  // .substandard {
-  //   background: linear-gradient(90deg, #b2b4bb, #ced0d5);
-  //   color: #fff;
-  //   padding: 3px;
-  //   border-radius: 2px;
-  // }
-
-  .wrap {
-    width: 400px;
-    position: absolute;
-    top: 131px;
-    left: 794px;
-    transform-origin: right center;
-    z-index: 2005;
-  }
-
-  .vertical-line {
-    height: 64px;
-    border-left: 2px solid #e9ecf7;
-    margin-left: 4px;
-    padding: 0 3px;
-    // border-image: -webkit-linear-gradient(#00eba7, #08b8e6) 30 30;
-    // border-image: -moz-linear-gradient(#00eba7, #08b8e6) 30 30;
-    // border-image: linear-gradient(#00eba7, #08b8e6) 30 30;
-  }
-
-  .el-pagination {
-    padding: 10px 15px;
-    margin-bottom: 0;
+.vertical-text-left {
+  width: 62px;
+  text-align: right;
+}
+
+.flex {
+  display: flex;
+}
+
+.el-range-editor.el-input__inner {
+  margin-left: 10px;
+}
+
+/deep/.base_header_layout .grid-content.right .find.el-button--primary {
+  width: 30px;
+  margin-left: -10px;
+  border-top-left-radius: 0px;
+  border-bottom-left-radius: 0px;
+}
+
+.el-button--primary {
+  background-color: #5878e8;
+  border-color: #5878e8;
+}
+
+.el-button--default {
+  border: 1px solid #5473e8;
+  color: #5473e8;
+}
+
+// .warning {
+//   width: 100%;
+//   height: 2px;
+//   background: red;
+// }
+
+.executory,
+.inExecution,
+.done {
+  width: 6px;
+  height: 6px;
+  display: inline-block;
+  border-radius: 50%;
+  position: relative;
+  top: -1px;
+}
+
+.executory {
+  background: #ff9f24;
+}
+
+.inExecution {
+  background: #5878e8;
+}
+
+.done {
+  background: #50cad4;
+}
+
+// .top-grade {
+//   background: linear-gradient(90deg, #5678e9, #7993f6);
+//   color: #fff;
+//   padding: 3px;
+//   border-radius: 2px;
+// }
+
+// .second-class {
+//   background: linear-gradient(90deg, #50cdd9, #82e2ea);
+//   color: #fff;
+//   padding: 3px;
+//   border-radius: 2px;
+// }
+
+// .third-class {
+//   background: linear-gradient(90deg, #ffa735, #ffbf70);
+//   color: #fff;
+//   padding: 3px;
+//   border-radius: 2px;
+// }
+
+// .substandard {
+//   background: linear-gradient(90deg, #b2b4bb, #ced0d5);
+//   color: #fff;
+//   padding: 3px;
+//   border-radius: 2px;
+// }
+
+.wrap {
+  width: 400px;
+  position: absolute;
+  top: 131px;
+  left: 794px;
+  transform-origin: right center;
+  z-index: 2005;
+}
+
+.vertical-line {
+  height: 64px;
+  border-left: 2px solid #e9ecf7;
+  margin-left: 4px;
+  padding: 0 3px;
+  // border-image: -webkit-linear-gradient(#00eba7, #08b8e6) 30 30;
+  // border-image: -moz-linear-gradient(#00eba7, #08b8e6) 30 30;
+  // border-image: linear-gradient(#00eba7, #08b8e6) 30 30;
+}
+
+.el-pagination {
+  padding: 10px 15px;
+  margin-bottom: 0;
+  text-align: center;
+}
+
+/deep/.el-pager li.active {
+  color: #5878e8;
+  cursor: default;
+}
+
+/deep/.el-pager li:hover {
+  color: #5878e8;
+  cursor: default;
+}
+
+.vertical-circle {
+  width: 10px;
+  height: 10px;
+  border: 2px solid #5878e8;
+  background-color: #ffffff;
+  -webkit-border-radius: 100px;
+}
+
+.vertical-circle:first-child {
+  color: red;
+}
+
+.vertical-text {
+  margin: 0 10px;
+  color: #8890b1;
+  font-size: 12px;
+  margin-top: -4px;
+}
+
+/deep/.el-table .el-table__header .cell,
+/deep/.el-table .el-table__body .cell {
+  text-align: center;
+}
+
+.typeselect {
+  width: 500px;
+}
+
+.padding-xs {
+  padding: 15px;
+  text-align: right;
+}
+
+.clearfix:after {
+  content: '';
+  display: block;
+  clear: both;
+}
+
+.el-table {
+  font-size: 16px;
+}
+
+.taskType {
+  width: 100%;
+  background-color: #fff;
+  margin-top: 2px;
+  margin-bottom: 10px;
+  list-style: none;
+
+  // padding-bottom: 20px;
+  li {
+    float: left;
+    border: 1px solid #6ea0f3;
+    border-radius: 5px;
+    max-width: 190px;
+    padding: 0 5px;
     text-align: center;
-  }
-
-  /deep/.el-pager li.active {
-    color: #5878e8;
-    cursor: default;
-  }
-
-  /deep/.el-pager li:hover {
-    color: #5878e8;
-    cursor: default;
-  }
-
-  .vertical-circle {
-    width: 10px;
-    height: 10px;
-    border: 2px solid #5878e8;
-    background-color: #ffffff;
-    -webkit-border-radius: 100px;
-  }
-
-  .vertical-circle:first-child {
-    color: red;
-  }
-
-  .vertical-text {
-    margin: 0 10px;
-    color: #8890b1;
-    font-size: 12px;
-    margin-top: -4px;
-  }
-
-  /deep/.el-table .el-table__header .cell,
-  /deep/.el-table .el-table__body .cell {
-    text-align: center;
-  }
+    margin: 10px 20px;
+    cursor: pointer;
+    font-size: 14px;
 
-  .typeselect {
-    width: 500px;
-  }
-
-  .padding-xs {
-    padding: 15px;
-    text-align: right;
-  }
-
-  .clearfix:after {
-    content: '';
-    display: block;
-    clear: both;
-  }
-
-  .el-table {
-    font-size: 16px;
-  }
+    p {
+      margin: 8px 0px;
 
-  .taskType {
-    width: 100%;
-    background-color: #fff;
-    margin-top: 2px;
-    margin-bottom: 10px;
-    list-style: none;
-
-    // padding-bottom: 20px;
-    li {
-      float: left;
-      border: 1px solid #6ea0f3;
-      border-radius: 5px;
-      max-width: 190px;
-      padding: 0 5px;
-      text-align: center;
-      margin: 10px 20px;
-      cursor: pointer;
-      font-size: 14px;
-
-      p {
-        margin: 8px 0px;
-
-        span {
-          color: #e74c3c;
-        }
+      span {
+        color: #e74c3c;
       }
     }
-
-    li:hover {
-      background-color: #e4eeff;
-      color: #1d6ced;
-    }
-  }
-
-  .el-date-editor--date {
-    margin: 0 10px;
-  }
-
-  .findValue {
-    margin: 0 10px;
   }
 
-  /deep/.findValue .el-input__inner {
-    border-top-right-radius: 0px;
-    border-bottom-right-radius: 0px;
+  li:hover {
+    background-color: #e4eeff;
+    color: #1d6ced;
   }
-
-  // .button-container {
-  //   display: flex;
-  //   flex-wrap: nowrap;
-  //   justify-content: space-between;
-  //   align-items: center;
-  //   background-color: #fff;
-  //   width: 100%;
-  //   height: 50px;
-  //   padding: 0 10px;
-
-  //   &>div {
-  //     margin-left: 10px;
-  //     display: flex;
-  //     flex-wrap: nowrap;
-  //     flex-direction: row;
-
-  //     &>span {
-  //       line-height: 50px;
-  //     }
-  //   }
-
-  //   /deep/.auditFlow-box {
-  //     position: unset;
-  //     margin-left: 10px;
-
-  //     &/deep/.auditFlow-icon {
-  //       width: auto;
-  //       padding-right: 30px;
-  //     }
-
-  //     &/deep/.auditFlow-main {
-  //       position: absolute;
-  //     }
-  //   }
-  // }
-
-  // .box-app {
-  //   display: inline-block;
-  //   float: left;
-  //   margin-left: 30px;
-  //   line-height: 50px;
-  // }
-
-  /deep/.el-dialog {
-    .el-form-item {
-      margin-bottom: 0 !important;
-
-      .el-input--medium {
-        textarea {
-          min-height: 100px !important;
-        }
+}
+
+.el-date-editor--date {
+  margin: 0 10px;
+}
+
+.findValue {
+  margin: 0 10px;
+}
+
+/deep/.findValue .el-input__inner {
+  border-top-right-radius: 0px;
+  border-bottom-right-radius: 0px;
+}
+
+// .button-container {
+//   display: flex;
+//   flex-wrap: nowrap;
+//   justify-content: space-between;
+//   align-items: center;
+//   background-color: #fff;
+//   width: 100%;
+//   height: 50px;
+//   padding: 0 10px;
+
+//   &>div {
+//     margin-left: 10px;
+//     display: flex;
+//     flex-wrap: nowrap;
+//     flex-direction: row;
+
+//     &>span {
+//       line-height: 50px;
+//     }
+//   }
+
+//   /deep/.auditFlow-box {
+//     position: unset;
+//     margin-left: 10px;
+
+//     &/deep/.auditFlow-icon {
+//       width: auto;
+//       padding-right: 30px;
+//     }
+
+//     &/deep/.auditFlow-main {
+//       position: absolute;
+//     }
+//   }
+// }
+
+// .box-app {
+//   display: inline-block;
+//   float: left;
+//   margin-left: 30px;
+//   line-height: 50px;
+// }
+
+/deep/.el-dialog {
+  .el-form-item {
+    margin-bottom: 0 !important;
+
+    .el-input--medium {
+      textarea {
+        min-height: 100px !important;
       }
     }
   }
-
-  .collapse-bottom {
-    margin-bottom: 20px;
+}
+
+.collapse-bottom {
+  margin-bottom: 20px;
+}
+
+.input-main .textarea .el-textarea__inner {
+  width: 100%;
+  z-index: 1;
+}
+
+/*.crt-main .textarea /deep/ .el-form-item__label {*/
+/*  height: 82px;*/
+/*}*/
+// 控制select为只读的时候显示样式
+
+// .hide-sel {
+//   .el-input__inner {
+//     border: 0px;
+//   }
+
+//   .el-icon-arrow-up {
+//     display: none;
+//   }
+
+//   .el-textarea__inner {
+//     background-color: #fff !important;
+//     border: 0;
+//   }
+
+//   .el-date-editor {
+//     i {
+//       display: none;
+//     }
+//   }
+
+//   .is-disabled {
+//     .el-input__inner:hover {
+//       background-color: #fff !important;
+//       border: 0;
+//     }
+
+//     color: #606266;
+
+//     .el-input__inner {
+//       background-color: #fff !important;
+//       border: 0;
+//       color: #606266;
+//     }
+
+//     .el-textarea__inner {
+//       background-color: #fff !important;
+//       border: 0;
+//       color: #606266;
+//     }
+//   }
+// }
+
+// 控制select为只读的时候显示样式
+/deep/.ws-class-table-col {
+  height: auto;
+  padding: 0px 2px;
+
+  /deep/.el-input__inner {
+    padding: 0px 2px;
   }
+}
 
-  .input-main .textarea .el-textarea__inner {
-    width: 100%;
-    z-index: 1;
+/deep/.is-disabled {
+  .el-input__prefix,
+  .el-input__suffix {
+    display: none;
   }
 
-  /*.crt-main .textarea /deep/ .el-form-item__label {*/
-  /*  height: 82px;*/
-  /*}*/
-  // 控制select为只读的时候显示样式
-
-  // .hide-sel {
-  //   .el-input__inner {
-  //     border: 0px;
-  //   }
-
-  //   .el-icon-arrow-up {
-  //     display: none;
-  //   }
-
-  //   .el-textarea__inner {
-  //     background-color: #fff !important;
-  //     border: 0;
-  //   }
-
-  //   .el-date-editor {
-  //     i {
-  //       display: none;
-  //     }
-  //   }
-
-  //   .is-disabled {
-  //     .el-input__inner:hover {
-  //       background-color: #fff !important;
-  //       border: 0;
-  //     }
-
-  //     color: #606266;
-
-  //     .el-input__inner {
-  //       background-color: #fff !important;
-  //       border: 0;
-  //       color: #606266;
-  //     }
-
-  //     .el-textarea__inner {
-  //       background-color: #fff !important;
-  //       border: 0;
-  //       color: #606266;
-  //     }
-  //   }
-  // }
-
-  // 控制select为只读的时候显示样式
-  /deep/.ws-class-table-col {
-    height: auto;
-    padding: 0px 2px;
-
-    /deep/.el-input__inner {
-      padding: 0px 2px;
-    }
+  .el-input__inner {
+    background-color: #fff;
+    border-color: #fff !important;
+    color: #000 !important;
+    font-size: 14px;
+    cursor: text;
+    padding: 0 !important;
   }
+}
 
-  /deep/.is-disabled {
-    .el-input__prefix,
-    .el-input__suffix {
-      display: none;
-    }
+/deep/.typeselect .el-input__inner {
+  color: #8890b1;
+}
 
-    .el-input__inner {
-      background-color: #fff;
-      border-color: #fff !important;
-      color: #000 !important;
-      font-size: 14px;
-      cursor: text;
-      padding: 0 !important;
-    }
-  }
-
-  /deep/.typeselect .el-input__inner {
-    color: #8890b1;
-  }
-  /deep/.statusselect .el-input__inner {
-    color: #8890b1;
-    width:100%;
-  }
+/deep/.statusselect .el-input__inner {
+  color: #8890b1;
+  width: 100%;
+}
 </style>

+ 93 - 1
src/views/contractManagement/salesContract.vue

@@ -148,8 +148,26 @@
         <span v-else>{{scope.row.mildewGrain}}</span>
         </template>
       </el-table-column>
+      
       <el-table-column prop="amountEdPayable" label="已付运费"> </el-table-column>
+      <el-table-column prop="statementUrl" label="结算单">
+        <template slot-scope="scope">
+          <img width="18" height="20" style="vertical-align: text-top; position: relative; top: -1px"
+            src="../../../public/img/fujian.png" @click="settlement(scope.row)" alt="" />
+          <span v-if="scope.row.statementUrl != null">
+            {{ scope.row.statementUrl? scope.row.statementUrl.split(",").length : "" }}
+          </span>
+        </template>
+      </el-table-column>
       <el-table-column width='120' prop="goodsNames" label="已开发票 (元)">
+        <template slot-scope="scope">
+          {{scope.row.goodsNames}}
+          <img width="18" height="20" style="vertical-align: text-top; position: relative; top: -1px"
+            src="../../../public/img/fujian.png" @click="invoiceUploade(scope.row)" alt="" />
+          <span v-if="scope.row.invoiceUrl != null">
+            {{ scope.row.invoiceUrl? scope.row.invoiceUrl.split(",").length : "" }}
+          </span>
+        </template>
       </el-table-column>
       <el-table-column prop="addressUrl" label="附件">
         <template slot-scope="scope">
@@ -213,6 +231,28 @@
       <ws-upload v-else ref="upload" :comp-id="compId" :appendix-ids="appendixIdss" :editable="false"
         accept=".jpg, .jpeg, .png, .pdf, .doc, .zip, .rar" />
     </WinseaContentModal>
+    <!-- 结算单 -->
+    <WinseaContentModal v-model="countMoney" title="结算单信息"
+      @on-cancel="handleClose">
+      <div v-if="applstatus">
+        <ws-upload ref="upload" :size-limit="size" @onChange="onChange1" :comp-id="compId" :appendix-ids="appendixIdss"
+          accept=".jpg, .jpeg, .png, .pdf, .doc, .docx, .zip, .rar"
+          v-hasPermission="`contractManagement.salesContract.salesContractInfo.jiedan`" />
+      </div>
+      <ws-upload v-else ref="upload" :comp-id="compId" :appendix-ids="appendixIdss" :editable="false"
+        accept=".jpg, .jpeg, .png, .pdf, .doc, .zip, .rar" />
+    </WinseaContentModal>
+     <!-- 上传已开发票 -->
+     <WinseaContentModal v-model="invoiceSwitch" title="发票信息"
+      @on-cancel="handleClose">
+      <div v-if="applstatus">
+        <ws-upload ref="upload" :size-limit="size" @onChange="onChange2" :comp-id="compId" :appendix-ids="appendixIdss"
+          accept=".jpg, .jpeg, .png, .pdf, .doc, .docx, .zip, .rar"
+          v-hasPermission="`contractManagement.salesContract.salesContractInfo.fapiao`" />
+      </div>
+      <ws-upload v-else ref="upload" :comp-id="compId" :appendix-ids="appendixIdss" :editable="false"
+        accept=".jpg, .jpeg, .png, .pdf, .doc, .zip, .rar" />
+    </WinseaContentModal>
     <el-dialog
     title="合同完成"
     :visible.sync="show"
@@ -323,7 +363,9 @@
         statusList:[{
           value:'发运结束',
         },{value:'已完成',}],
-        accessoryTFs: false,
+        accessoryTFs: false,//附件
+        countMoney:false,//结算单
+        invoiceSwitch:false,//发票上传
         accesscard: false,
         accessurl: '',
         fileList: [],
@@ -511,6 +553,46 @@
             this.$refs.upload.clearFiles()
           })
       },
+      onChange1() {
+      this.$refs.upload
+        .handleSaveBill()
+        .then(async (response) => {
+          this.deptBudgetList.statementUrl = response
+          this.deptBudgetList.id = this.id
+          this.deptBudgetList.flag = 1
+          editInfo(this.deptBudgetList)
+            .toPromise()
+            .then((response) => {
+              this.countMoney = false
+              this.$message.success('上传成功')
+              this.getList()
+            })
+        })
+        .catch((res) => {
+          EventBus.$emit('error', (JSON.parse(res) || {}).message)
+          this.$refs.upload.clearFiles()
+        })
+    },
+    onChange2() {
+      this.$refs.upload
+        .handleSaveBill()
+        .then(async (response) => {
+          this.deptBudgetList.invoiceUrl = response
+          this.deptBudgetList.id = this.id
+          this.deptBudgetList.flag = 1
+          editInfo(this.deptBudgetList)
+            .toPromise()
+            .then((response) => {
+              this.invoiceSwitch = false
+              this.$message.success('上传成功')
+              this.getList()
+            })
+        })
+        .catch((res) => {
+          EventBus.$emit('error', (JSON.parse(res) || {}).message)
+          this.$refs.upload.clearFiles()
+        })
+    },
       dateFormat(fmt, date) {
         let ret
         const opt = {
@@ -679,6 +761,16 @@
         this.appendixIdss = row.addressUrl
         console.log(this.appendixIdss)
       },
+      settlement(row){
+      this.id = row.id
+      this.countMoney = true
+      this.appendixIdss = row.statementUrl
+    },
+    invoiceUploade(row){
+      this.id = row.id
+      this.invoiceSwitch = true
+      this.appendixIdss = row.invoiceUrl
+    },
       handleExamine(row) {
         this.$router.push({
           name: 'salesContractExamine',

+ 0 - 1
src/views/home/right-top.vue

@@ -43,7 +43,6 @@ export default {
 //         }
   
 //       }
-  debugger
       //  this.countUserNumData = res.data;
       let ct = new Date().getMonth();
       let dateList =[]

+ 0 - 1
src/views/personnelManagement/checkWorkList.vue

@@ -271,7 +271,6 @@
           .toPromise()
           .then((response) => {
             console.log(response.data)
-            debugger
             this.tableData = response.records
             // for (var i = 0; i < response.records.length; i++) {
             //   response.records[i].identification = 'false'

+ 13 - 1
src/views/warehousenew/warehousingOrder.vue

@@ -698,7 +698,19 @@ export default {
       }else{
         for(let i =0 ; i<this.warehouseList.length;i++){
           if(this.warehouseList[i].warehouseName == e){
-            this.goodsList = this.warehouseList[i].goodsNameInfos
+            for(let j = 0;j<this.warehouseList[i].goodsNameInfos.length;j++){
+              if(j==0){
+                this.goodsList.push(this.warehouseList[i].goodsNameInfos[j])
+              }else{
+                for(let n = 0;n < this.goodsList.length;n++){
+                  if(this.goodsList[n].goodsName == this.warehouseList[i].goodsNameInfos[j].goodsName){
+                    this.goodsList[n].storage += this.warehouseList[i].goodsNameInfos[j].storage
+                  }else{
+                    this.goodsList.push(this.warehouseList[i].goodsNameInfos[j])
+                  }
+                }
+              }
+            }
             this.baseId = this.warehouseList[i].id
             break
           }