123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563 |
- <template>
- <div class="app-container">
- <div v-if="MainTable == false">
- <MainForm
- ref="MainForm"
- :searchdata="formOption"
- :display="display"
- :form="queryParms"
- :show="show"
- :inDex="inDex"
- />
- <listComponent
- style="clear:both"
- v-if="waitFor"
- :tableData="tableData"
- @selectionbox="selectionbox"
- @see="viewMethod"
- @modify="modification"
- @deletion="deletion"
- @buttonList="buttonList"
- @showSearch="showSearch"
- @getList="getList"
- @feedback="feedback"
- :customButton="customButton"
- :arrow="arrow"
- :hasPermi="hasPermi"
- :tatolLabel="mainTatol"
- :seachButton="seachButton"
- :setRowList="setRowList"
- :listStyle="listStyle"
- :isItHidden="isItHidden"
- :queryList="queryList"/>
- <pagination
- v-show="total > 0"
- :total="total"
- :page.sync="queryParms.pageNum"
- :limit.sync="queryParms.pageSize"
- @pagination="getList"
- />
- </div>
- <div v-if="MainTable == true">
- <el-breadcrumb separator="/" style="display:flex;align-items: center;margin-bottom: 10px">
- <el-breadcrumb-item>仓库出库</el-breadcrumb-item>
- <el-breadcrumb-item>仓库出库详情页</el-breadcrumb-item>
- <el-breadcrumb-item>
- <el-button plain size="mini" type="danger" icon="el-icon-arrow-left" @click="backRules">
- 返回列表
- </el-button>
- </el-breadcrumb-item>
- </el-breadcrumb>
- <MainForm
- ref="detailForm"
- :searchdata="detailOption"
- :display="display"
- :form="detailForm"
- :show="show = true"
- :inDex="inDex"
- @backRules="backRules"
- @backSave="backSave"
- @verificationRules="verificationRules"
- @changeWarehouse="changeWarehouse"
- />
- <list-component
- v-if="waitFor"
- :tableData="detailData"
- @selectionbox="selectionbox"
- @see="viewMethod"
- @modify="modification"
- @deletion="deletion"
- @buttonList="buttonList"
- @showSearch="showSearch"
- @getList="getList"
- @deletRows="deletRows"
- @feedback="feedback"
- @totalAmount="totalAmount"
- @change="change"
- :seachButton="confirmButton"
- :customButton="detailButton"
- :listStyle="detailStyle"
- :hasPermi="hasPermi"
- :setRowList="setRowList"
- :tatolLabel="tatolLabel"
- :listData="listData"
- :queryList="detailList"/>
- </div>
- <el-dialog
- title="打印出库"
- :visible.sync="dialogVisible"
- :fullscreen="true"
- style="padding: 0;margin:0"
- width="70%">
- <div ref="print">
- <table class="table table-striped table-bordered" align="center" valign="center" style="font-size: 12px;border-collapse: collapse; border: none;margin-top: 10px;" >
- <tr>
- <td style="font-size: 24px;font-weight:bold" class="column" colspan="15" align="center">出库明细</td>
- </tr>
- <tr>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" rowspan="2">出库时间</td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" rowspan="2">产品名称</td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" rowspan="2">规格</td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" rowspan="2">数量</td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" rowspan="2">供货商</td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" rowspan="2">供货人</td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" rowspan="2">联系电话</td>
- <!-- <td class="column" style="border: 1px solid #000; padding:10px" align="center" rowspan="2">生产日期或批号</td>-->
- <!-- <td class="column" style="border: 1px solid #000; padding:10px" align="center" rowspan="2">保质期限</td>-->
- <!-- <td class="column" style="border: 1px solid #000; padding:10px" align="center" rowspan="2">保存条件</td>-->
- <!-- <td class="column" style="border: 1px solid #000; padding:10px" align="center" rowspan="2">索证索票情况</td>-->
- <!-- <td class="column" style="border: 1px solid #000; padding:10px" align="center" rowspan="2">采购人</td>-->
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" colspan="2">检验结果</td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" rowspan="2">验收人</td>
- </tr>
- <tr>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" >感官</td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" >数量</td>
- </tr>
- <tr v-for="(item,index) in this.detailData" :key="index">
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" >{{detailForm.fBsdate}}</td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" >{{item.fFeeid}}</td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" >{{item.fFeeunitid}}</td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" >{{item.fQty}}</td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" >{{detailForm.corpName}}</td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" >{{item.fAmount}}</td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" >{{item.fStltypeid}}</td>
- <!-- <td class="column" style="border: 1px solid #000; padding:10px" align="center" >{{item.tProductdate}}/{{item.fLotno}}</td>-->
- <!-- <td class="column" style="border: 1px solid #000; padding:10px" align="center" >{{item.fValid}}</td>-->
- <!-- <td class="column" style="border: 1px solid #000; padding:10px" align="center" >{{item.fStoreEnv}}</td>-->
- <!-- <td class="column" style="border: 1px solid #000; padding:10px" align="center" >{{item.fIsfilles}}</td>-->
- <!-- <td class="column" style="border: 1px solid #000; padding:10px" align="center" >{{detailForm.fPurchase}}</td>-->
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" ></td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" ></td>
- <td class="column" style="border: 1px solid #000; padding:10px" align="center" ></td>
- </tr>
- </table>
- </div>
- <span slot="footer" class="dialog-footer">
- <el-button @click="dialogVisible = false">取 消</el-button>
- <el-button type="primary" @click="Printing">打印</el-button>
- </span>
- </el-dialog>
- </div>
- </template>
- <script>
- import { select } from '@/api/system/set'
- import MainForm from '@/combination/MainForm'
- import { listInStock, addSave, getSave, getArea,
- getustomer,getEntry, getwarehouse, getGoodName,
- canBedelet, delRows, getWarehousekeeper, addWarehous,
- deletMain, delFee, copyNew, listQuery} from '@/api/warehouse/inStock'
- import Cookies from 'js-cookie'
- import { getliable } from '@/api/project'
- export default {
- name: 'inStock',
- data(){
- return{
- copyeId:'',
- hasPermi:{
- lookup:['anpin:stockControl:query'],
- disappear:['anpin:stockControl:remove']
- },
- formList:{},
- dialogVisible: false,
- mainTatol:['金额'],
- ids:[],
- listData:{
- fFeeid:[],
- fFeeunitid:[],
- fStltypeid:[],
- fWarehouseid:[],
- fUnits:[],
- fStoreEnv:[],
- fIsfilles:[],
- },
- selection:[],
- isItHidden:true,
- // 非单个禁用
- single: true,
- // 总条数
- total: 0,
- inDex:4,
- tatolLabel:['单价','数量','金额'],
- MainTable:false,
- show: false,
- arrow:'el-icon-arrow-up',
- queryList:{
- tableName:'出库主表',
- columnList:[]
- },
- detailList:{
- tableName:'仓库出库详情',
- columnList:[]
- },
- //判断自定义列是否有值再渲染组件
- waitFor:false,
- display:3,
- queryParms:{
- pageNum: 1,
- pageSize: 10,
- fBilltype:'CK'
- },
- detailForm:{
- },
- setRowList:[],
- //主页面默认显示4个表单数据
- formOption:[
- {
- span:6,
- label: 'fBillno',
- name:"系统编号",
- form:2,
- width:200,
- labelSize:'80',
- rules: { required:false }
- },
- {
- span:6,
- label: 'fWarehouseid',
- name:"仓库",
- form:1,
- width:200,
- labelSize:'80',
- rules: { required:false },
- data:[]
- },
- {
- span:6,
- label: 'fCorpid',
- name:"供应商",
- form:1,
- width:200,
- labelSize:'80',
- rules: { required:false },
- data:[]
- },
- {
- span:6,
- label: 'timeInterval',
- name:"出库日期",
- form:6,
- width:250,
- labelSize:'80',
- rules: { required:false },
- },
- {
- span:6,
- label: 'cLoadDate',
- name:"申请日期",
- form:6,
- width:200,
- labelSize:'80',
- rules: { required:false }
- },
- {
- span:6,
- label: 'moneys',
- name:"金额范围",
- form:5,
- width:200,
- labelSize:'80',
- rules: { required:false }
- },
- {
- span:6,
- label: 'createBy',
- name:"申请人",
- form:2,
- width:200,
- labelSize:'80',
- rules: { required:false }
- },
- {
- span:6,
- label: 'fGoodsid',
- name:"项目名称",
- form:1,
- width:200,
- labelSize:'80',
- rules: { required:false },
- data:[]
- },
- {
- span:6,
- label: 'remark',
- name:"备注",
- form:2,
- width:200,
- labelSize:'80',
- rules: { required:false }
- },
- ],
- //表名称
- tableData:[],
- //从表表名
- detailData:[],
- //传输表
- mainStyle:[],
- //表数据
- listStyle: [
- {
- surface: "1",
- label: "serialNumber",
- name: "序号",
- checked: 0,
- width: 100,
- onabort:''
- },{
- surface: "2",
- label: "fBillno",
- name: "申请编号",
- checked: 0,
- width: 100,
- }, {
- surface: "3",
- label: "fWarehouseName",
- name: "仓库",
- checked: 0,
- width: 200,
- operation:1
- },
- {
- surface: "4",
- label: "corpName",
- name: "供应商",
- checked: 0,
- width: 200,
- operation:1
- },{
- surface: "5",
- label: "fMoney",
- name: "金额",
- checked: 0,
- width: 200,
- operation:1
- },{
- surface: "6",
- label: "createTime",
- name: "申请日期",
- checked: 0,
- width: 200,
- operation:1
- },{
- surface: "7",
- label: "fBsdate",
- name: "出库日期",
- checked: 0,
- width: 200,
- operation:1
- },
- {
- surface: "8",
- label: "createBy",
- name: "申请人",
- checked: 0,
- width: 200,
- operation:1
- },{
- surface: "9",
- label: "fBillstatusName",
- name: "状态",
- checked: 0,
- width: 200,
- operation:1
- },{
- surface: "10",
- label: "fReviewDate",
- name: "审核日期",
- checked: 0,
- width: 200,
- operation:1,
- },
- {
- surface: "11",
- label: "projectName",
- name: "项目名称",
- checked: 0,
- width: 200,
- operation:1
- },{
- surface: "12",
- label: "remark",
- name: "备注",
- checked: 0,
- width: 200,
- operation:1
- },{
- surface: "13",
- label: "fMaterial2",
- name: "操作",
- checked: 0,
- width: 200,
- operation:1,
- fixed:'right'
- }
- ],
- //从表数据
- detailStyle: [
- {
- surface: "1",
- label: "serialNumber",
- name: "序号",
- checked: 0,
- width: 100,
- onabort:''
- },{
- surface: "2",
- label: "fFeeid",
- name: "品名",
- checked: 0,
- width: 200,
- changeable:1,
- data:[],
- },
- {
- surface: "3",
- label: "fCurrencyName",
- name: "规格",
- checked: 0,
- width: 100,
- },
- {
- surface: "4",
- label: "fUnitprice",
- name: "单价",
- checked: 0,
- width: 100,
- operation:2,
- changeable:2,
- disabled:false,
- onabort:'this.value=this.value.replace(/[^\\d^\\.]+/g,\'\')'
- },{
- surface: "5",
- label: "fQty",
- name: "数量",
- checked: 0,
- width: 100,
- operation:2,
- changeable:2,
- disabled:false,
- onabort:'this.value=this.value.replace(/[^\\d^\\.]+/g,\'\')'
- },{
- surface: "6",
- label: "fFeeunitid",
- name: "计量单位",
- checked: 0,
- width: 100,
- changeable:1,
- operation:2,
- data:[],
- disabled:false
- },{
- surface: "7",
- label: "fWarehouseid",
- name: "库区",
- checked: 0,
- width: 100,
- operation:2,
- changeable:1,
- data:[],
- disabled:false
- },{
- surface: "8",
- label: "fAmount",
- name: "金额",
- checked: 0,
- width: 100,
- operation:2,
- },{
- surface: "9",
- label: "fStltypeid",
- name: "付费方式",
- checked: 0,
- width: 100,
- operation:2,
- changeable: 1,
- data:[],
- disabled:false
- },
- {
- surface: "10",
- label: "tProductdate",
- name: "生产日期",
- checked: 0,
- width: 100,
- operation:2,
- changeable: 3,
- data:[],
- disabled:false
- },{
- surface: "11",
- label: "fLotno",
- name: "批号",
- checked: 0,
- width: 100,
- operation:2,
- changeable: 2,
- data:[],
- disabled:false
- },
- {
- surface: "12",
- label: "fValid",
- name: "保质期限",
- checked: 0,
- width: 100,
- operation:2,
- changeable: 2,
- data:[],
- disabled:false,
- onabort:'this.value=this.value.replace(/[^\\d^\\.]+/g,\'\')'
- },
- {
- surface: "13",
- label: "fUnits",
- name: "单位",
- checked: 0,
- width: 100,
- operation:2,
- changeable: 1,
- data:[],
- disabled:false
- },
- {
- surface: "14",
- label: "fStoreEnv",
- name: "存储环境",
- checked: 0,
- width: 100,
- operation:2,
- changeable: 1,
- data:[],
- disabled:false
- },
- {
- surface: "15",
- label: "fIsfilles",
- name: "索证索票",
- checked: 0,
- width: 100,
- operation:2,
- changeable: 1,
- disabled:false
- },
- {
- surface: "16",
- label: "remark",
- name: "备注",
- checked: 0,
- width: 100,
- operation:2,
- changeable: 2,
- disabled:false
- },{
- surface: "17",
- label: "fReviewDate",
- name: "审核日期",
- checked: 0,
- width: 100,
- operation:2,
- },
- {
- surface: "18",
- label: "createBy",
- name: "申请人",
- checked: 0,
- width: 100,
- operation:2,
- },{
- surface: "19",
- label: "fMaterial10",
- name: "操作",
- checked: 0,
- width: 100,
- operation:2,
- disabled:false
- }
- ],
- //详情主表
- detailOption:[
- {
- index:'1',
- span:6,
- label: 'fBillno',
- name:"系统编号",
- form:2,
- width:200,
- labelSize:'80',
- rules:'',
- disabled:true,
- doNot:'1'
- },
- {
- index:'2',
- span:6,
- label: 'fCorpid',
- name:"供应商",
- form:1,
- width:200,
- labelSize:'80',
- rules:{ required: true, message: ' ', trigger: 'blur' },
- data:[],
- disabled:false
- },
- {
- index:'3',
- span:6,
- label: 'fStorekeeper',
- name:"库管员",
- form:1,
- width:200,
- labelSize:'80',
- rules:{ required: true, message: ' ', trigger: 'blur' },
- data:[],
- disabled:false
- },
- {
- index:'4',
- span:6,
- label: 'fPurchase',
- name:"采购人",
- form:1,
- width:200,
- labelSize:'80',
- rules:{ required: true, message: ' ', trigger: 'blur' },
- data:[],
- disabled:false
- },
- {
- index:'5',
- span:6,
- label: 'fWarehouseid',
- name:"仓库",
- form:1,
- width:200,
- labelSize:'80',
- rules:{ required: true, message: ' ', trigger: 'blur' },
- data:[],
- disabled:false
- }, {
- index:'6',
- span:6,
- label: 'fSbu',
- name:"开票公司",
- form:1,
- width:200,
- labelSize:'80',
- rules:{ required: true, message: ' ', trigger: 'blur' },
- data:[],
- disabled:false
- },
- {
- index:'7',
- span:6,
- label: 'fBsdate',
- name:"出库日期",
- form:3,
- width:200,
- labelSize:'80',
- rules:{ required: true, message: ' ', trigger: 'blur' },
- disabled:false
- },
- {
- index:'8',
- span:6,
- label: 'remark',
- name:"备注",
- form:4,
- width:200,
- labelSize:'80',
- rules:'',
- disabled:false
- },
- ],
- //按钮
- customButton:[
- {
- type:'primary',
- size:'mini',
- icon:'el-icon-plus',
- name:'新增',
- disabled:false,
- hasPermi:['anpin:stockControl:anPingApply']
- },{
- type:'success',
- size:'mini',
- icon:'el-icon-edit',
- name:'修改',
- res:0,
- disabled:true,
- hasPermi:['anpin:stockControl:anPingApply']
- },{
- type:'info',
- size:'mini',
- icon:'el-icon-plus',
- name:'复制新增',
- disabled:true,
- hasPermi:['anpin:stockControl:generateReceipts']
- },
- ],
- seachButton:[
- {
- type:'',
- size:'mini',
- icon:'el-icon-search',
- name:'搜索',
- disabled:false,
- },{
- type:'',
- size:'mini',
- icon:'el-icon-refresh',
- name:'重置',
- disabled:false,
- },{
- type:'',
- size:'mini',
- icon:'el-icon-arrow-up',
- name:'展开',
- disabled:false
- }
- ],
- detailButton:[
- // {
- // type:'danger',
- // size:'mini',
- // icon:'el-icon-refresh-left',
- // name:'返回列表',
- // disabled:false,
- // },
- {
- type:'primary',
- size:'mini',
- icon:'el-icon-edit',
- name:'录入明细',
- disabled:false,
- },
- {
- type:'success',
- size:'mini',
- icon:'el-icon-check',
- name:'保存',
- disabled:false
- },
- {
- type:'primary',
- size:'mini',
- icon:'el-icon-edit',
- name:'新单',
- plain: true,
- disabled:false,
- },
- {
- type:'primary',
- size:'mini',
- icon:'el-icon-edit',
- name:'复制新单',
- copyeRow:true,
- plain: true,
- disabled:false,
- },{
- type:'info',
- size:'mini',
- icon:'el-icon-edit',
- name:'修改',
- disabled:false,
- res:1
- },{
- type:'info',
- size:'mini',
- icon:'el-icon-edit',
- name:'打印',
- disabled:false,
- res:1
- },{
- type:'info',
- size:'mini',
- icon:'el-icon-edit',
- name:'出库确认',
- disabled:false,
- res:1
- },
- {
- type:'warning',
- size:'mini',
- icon:'el-icon-refresh',
- name:'刷新',
- disabled:false,
- res:1
- }
- ],
- confirmButton:[
- {
- type:'cyan',
- size:'mini',
- icon:'',
- name:'打印',
- disabled:false,
- },{
- type:'info',
- size:'mini',
- icon:'',
- name:'出库确认',
- disabled:false
- }
- ]
- }
- },
- activated(){
- console.log(this.$route.query.open)
- if (this.$route.query.open === 'true'){
- this.detailList.columnList = this.detailStyle
- this.detailForm = {}
- this.detailData = []
- this.inDex = this.detailOption.length
- //从表修改按钮
- for(let li in this.detailStyle){
- if(!this.detailStyle[li].doNot){
- this.detailStyle[li].disabled = false
- }
- }
- for(let item in this.detailOption){
- if(!this.detailOption[item].doNot){
- this.detailOption[item].disabled = false
- }
- }
- for(let li in this.detailButton){
- this.detailButton[li].disabled = false
- }
- this.MainTable = true
- this.$router.push({ query: {} })
- }
- },
- created() {
- let data = {
- tableName: this.queryList.tableName,
- userId: Cookies.get("userName"),
- };
- this.getRow(data)
- let list = {
- fBilltype:'CK'
- }
- this.query(list)
- this.getRow()
- this.getList()
- this.selectMethods()
- },
- methods:{
- //返回列表
- goBack(){
- },
- change(scope){
- for(let item in this.detailData){
- for(let li in this.listData.fFeeid){
- if(this.detailData[item].fFeeid == this.listData.fFeeid[li].value){
- this.$set(this.detailData[item],'fFeeunitid',JSON.stringify(this.listData.fFeeid[li].fFeeunitid))
- this.$set(this.detailData[item],'fCurrencyName',this.listData.fFeeid[li].fCurrency)
- }
- }
- }
- },
- //确认打印
- Printing(){
- this.$print(this.$refs.print)
- },
- //查询主页列数据
- query(data){
- listQuery(data).then(res =>{
- this.tableData = res.rows
- })
- },
- //更换仓库
- changeWarehouse(){
- if(this.detailData.length != 0){
- for(let li in this.detailData){
- this.detailData[li].fWarehouseid = ''
- }
- }
- getArea(this.detailForm.fWarehouseid).then(res=>{
- this.listData.fWarehouseid = []
- for(let item in res.data){
- this.listData.fWarehouseid.push({
- label:res.data[item].fWarehouseInformation,
- value:res.data[item].id
- })
- }
- })
- },
- //自动合计金额
- totalAmount(){
- for(let li in this.detailData){
- if(this.detailData[li].fUnitprice && this.detailData[li].fQty){
- this.detailData[li].fAmount = (this.detailData[li].fUnitprice * this.detailData[li].fQty).toFixed(2)
- }
- }
- },
- //搜索、重置、展开
- feedback(res){
- if (res == '展开'){
- if (this.inDex == 4){
- this.inDex = this.formOption.length
- }else {
- this.inDex = 4
- }
- }else if (res == '搜索'){
- this.handleQuery()
- }else if (res == '重置'){
- this.resetQuery()
- }
- },
- selectMethods(){
- this.mainMethods()
- this.detailMethods()
- },
- //主页面下拉获取名称
- mainMethods(){
- for(let li in this.formOption){
- if(this.formOption[li].name == '仓库'){
- let queryParams = { pageNum: 1,}
- getwarehouse(queryParams).then(res=>{
- for(let item in res.rows){
- this.formOption[li].data.push({
- label:res.rows[item].fName,
- value:res.rows[item].fId
- })
- }
- })
- }
- else
- if(this.formOption[li].name == '供应商'){
- let queryParams = { pageNum: 1, fTypeid: 1}
- getustomer(queryParams).then(res => {
- for(let item in res.data){
- this.formOption[li].data.push({
- label:res.data[item].fName,
- value:res.data[item].fId
- })
- }
- })
- }
- }
- },
- //弹窗页获取下拉名称
- detailMethods(){
- for(let li in this.detailOption){
- if(this.detailOption[li].name == '仓库'){
- //获取仓库
- let queryParams = { pageNum: 1 }
- getwarehouse(queryParams).then(res=>{
- for(let item in res.rows){
- this.detailOption[li].data.push({
- label:res.rows[item].fName,
- value:res.rows[item].fId
- })
- }
- })
- }
- if(this.detailOption[li].name == '供应商'){
- //获取供应商
- let queryParams = { pageNum: 1, fTypeid: 1}
- getustomer(queryParams).then(res => {
- for(let item in res.data){
- this.detailOption[li].data.push({
- label:res.data[item].fName,
- value:res.data[item].fId
- })
- }
- })
- }
- if(this.detailOption[li].name == '开票公司'){
- //获取付款单位
- let queryParams = { pageNum: 1, fTypeid: 2}
- getustomer(queryParams).then(res => {
- for(let item in res.data){
- this.detailOption[li].data.push({
- label:res.data[item].fName,
- value:res.data[item].fId
- })
- }
- })
- }
- if(this.detailOption[li].name == '库管员'){
- let queryParams = { pageNum: 1,roleName:'库管'}
- getWarehousekeeper(queryParams).then(res=>{
- for(let item in res.rows){
- this.detailOption[li].data.push({
- label:res.rows[item].userName,
- value:res.rows[item].userId
- })
- }
- })
- }
- if(this.detailOption[li].name == '采购人'){
- getliable().then((res) => {
- for(let item in res.rows){
- this.detailOption[li].data.push({
- label:res.rows[item].userName,
- value:res.rows[item].userId
- })
- }
- })
- }
- }
- //获取计量单位字典表
- this.getDicts('data_unitfees').then((response) => {
- if (response.data) {
- for (let item in response.data) {
- this.listData.fFeeunitid.push({
- label: response.data[item].dictLabel,
- value: response.data[item].dictValue
- })
- }
- }
- })
- //获取浮点单位字典表
- this.getDicts('f_floatunit').then((response) => {
- if (response.data) {
- for (let item in response.data) {
- this.listData.fUnits.push({
- label: response.data[item].dictLabel,
- value: JSON.parse(response.data[item].dictValue)
- })
- }
- }
- })
- //获取存储环境字典表
- this.getDicts('f_StorageEnvironment').then((response) => {
- if (response.data) {
- for (let item in response.data) {
- this.listData.fStoreEnv.push({
- label: response.data[item].dictLabel,
- value: JSON.parse(response.data[item].dictValue)
- })
- }
- }
- })
- this.getDicts('f_evidence').then((response) => {
- if (response.data) {
- for (let item in response.data) {
- this.listData.fIsfilles.push({
- label: response.data[item].dictLabel,
- value: JSON.parse(response.data[item].dictValue)
- })
- }
- }
- })
- //获取品名
- let queryParams = { pageNum: 1 }
- getGoodName(queryParams).then(res=>{
- for(let item in res.rows){
- this.listData.fFeeid.push({
- label:res.rows[item].fName,
- value:res.rows[item].fId,
- fFeeunitid: res.rows[item].fFeeunitid,
- fCurrency: res.rows[item].fCurrency
- })
- }
- })
- //付费方式
- this.getDicts('f_paymode').then((response) => {
- if (response.data) {
- for (let item in response.data) {
- this.listData.fStltypeid.push({
- label: response.data[item].dictLabel,
- value: response.data[item].dictValue
- })
- }
- }
- })
- },
- handleQuery(){
- this.$refs.MainForm.hide()
- this.getList();
- },
- resetQuery(){
- this.queryParms = {}
- this.getList();
- },
- //查询列数据
- getRow() {
- let data = {
- tableName: this.queryList.tableName,
- userId: Cookies.get("userName"),
- };
- select(data).then((res) => {
- if (data.tableName === '仓库出库详情') {
- if (res.data.length != 0) {
- this.detailList.columnList = res.data.filter((e) => e.checked == 0);
- this.detailList.columnList = res.data;
- this.setRowList = res.data
- this.detailList.columnList = this.detailList.columnList.filter((e) => e.checked == 0);
- // this.waitFor = true
- }else {
- // this.waitFor = true
- this.$set(this.detailList,'columnList',this.$options.data().detailStyle)
- this.setRowList = this.$options.data().detailStyle
- }
- this.isItHidden = false
- this.inDex = this.detailOption.length
- }else {
- if (res.data.length != 0) {
- this.queryList.columnList = res.data.filter((e) => e.checked == 0);
- this.queryList.columnList = res.data;
- this.setRowList = res.data
- this.queryList.columnList = this.queryList.columnList.filter((e) => e.checked == 0);
- this.waitFor = true
- }else {
- this.waitFor = true
- this.$set(this.queryList,'columnList',this.$options.data().listStyle)
- this.setRowList = this.$options.data().listStyle
- }
- this.isItHidden = true
- this.inDex = 4
- }
- });
- },
- //选择框
- selectionbox(selection){
- this.selection = selection
- this.ids = selection.map((item) => item.fId)
- this.single = selection.length !== 1
- for(let li in this.customButton){
- if(this.customButton[li].name == '修改' || this.customButton[li].name == '复制新增'){
- this.customButton[li].disabled = this.single
- }
- }
- },
- //查看
- viewMethod(scope,res){
- this.detailList.columnList = this.detailStyle
- let fId = ''
- if(scope){
- fId = scope.row.fId
- }else if(res){
- fId = this.copyeId
- } else{
- fId = this.ids
- }
- getSave(fId).then(res=>{
- if(res.code == 200){
- if(res.data.warehouseBills){
- this.detailForm = res.data.warehouseBills
- this.$set(this.detailForm,'fStorekeeper',JSON.parse(this.detailForm.fStorekeeper))
- }
- if(res.data.tWarehousebillsfees){
- this.detailData = res.data.tWarehousebillsfees
- for(let li in this.detailData){
- this.$set(this.detailData[li],'fFeeunitid',JSON.stringify(this.detailData[li].fFeeunitid))
- this.$set(this.detailData[li],'fStltypeid',JSON.stringify(this.detailData[li].fStltypeid))
- }
- }
- }
- for(let li in this.detailStyle){
- this.detailStyle[li].disabled = true
- }
- for(let item in this.detailOption){
- this.detailOption[item].disabled = true
- }
- for(let li in this.detailButton){
- if(this.detailForm.fBillstatus == '6'){
- if(this.detailButton[li].name == '录入明细' || this.detailButton[li].name == '保存' ||
- this.detailButton[li].name == '出库确认' || this.detailButton[li].name == '刷新' || this.detailButton[li].name == '修改'){
- this.detailButton[li].disabled = true
- }else{
- this.detailButton[li].disabled = false
- }
- } else {
- if(this.detailButton[li].name == '录入明细' || this.detailButton[li].name == '保存' ||
- this.detailButton[li].name == '出库确认' || this.detailButton[li].name == '刷新'){
- this.detailButton[li].disabled = true
- }else{
- this.detailButton[li].disabled = false
- }
- }
- }
- getArea(this.detailForm.fWarehouseid).then(res=>{
- if(res.code == 200){
- this.listData.fWarehouseid = []
- for(let item in res.data){
- this.listData.fWarehouseid.push({
- label:res.data[item].fWarehouseInformation,
- value:res.data[item].id
- })
- }
- }
- })
- this.MainTable = true
- this.inDex = this.detailOption.length
- })
- },
- //修改
- modification(scope){
- },
- //删除
- deletion(scope){
- const fIds = scope.row.fId || this.ids;
- let tips = "";
- deletMain(fIds).then(res=>{
- switch (res.msg) {
- case "0": {
- this.$message.error("当前数据已被其他操作员操作,请刷新页面");
- break;
- }
- case "1": {
- tips = "当前主表有数据,确认是否删除?";
- this.delete_s(fIds, tips);
- break;
- }
- case "2": {
- tips = "当前主表有数据,从表有数据,确认是否删除?";
- this.delete_s(fIds, tips);
- break;
- }
- default: {
- return this.$message.error("未知错误,无状态");
- }
- }
- })
- },
- delete_s(fIds, tips) {
- this.$confirm(tips, "警告", {
- confirmButtonText: "确定",
- cancelButtonText: "取消",
- type: "warning",
- })
- .then(function () {
- return delFee(fIds);
- })
- .then(() => {
- this.getList();
- this.msgSuccess("删除成功");
- });
- },
- //删除从表行
- deletRows(index,rows){
- if(rows[index].fId){
- let formData = {
- fId:this.detailForm.fId,
- fDateChanged:this.detailForm.fDateChanged
- }
- canBedelet(formData).then(res=>{
- return delRows(rows[index].fId)
- })
- .then(()=>{
- getSave(this.detailForm.fId).then(res=>{
- if(res.code == 200){
- if(res.data.warehouseBills){
- this.detailForm = res.data.warehouseBills
- this.$set(this.detailForm,'fStorekeeper',JSON.parse(this.detailForm.fStorekeeper))
- }
- if(res.data.tWarehousebillsfees){
- this.detailData = res.data.tWarehousebillsfees
- for(let li in this.detailData){
- this.$set(this.detailData[li],'fFeeunitid',JSON.stringify(this.detailData[li].fFeeunitid))
- this.$set(this.detailData[li],'fStltypeid',JSON.stringify(this.detailData[li].fStltypeid))
- }
- }
- this.msgSuccess("删除成功");
- }
- })
- })
- .catch(res=>{
- this.$message.error(res)
- })
- }else {
- rows.splice(index, 1)
- }
- },
- //必填项新行
- verificationRules(valid){
- if(valid){
- this.detailData.push({
- serialNumber:null,
- fFeeid:null,
- fUnitprice:null,
- fQty:null,
- fFeeunitid:null,
- fWarehouseid:null,
- fAmount:null,
- fStltypeid:'1',
- tProductdate:null,
- fLotno:null,
- fValid:null,
- fUnits:null,
- fStoreEnv:null,
- fIsfilles:0,
- remark:null,
- fReviewDate:null,
- createBy:null,
- })
- }
- },
- //返回列表是否保存
- backRules(){
- for(let li in this.detailOption) {
- if(this.detailOption[li].name == '供应商'){
- if(this.detailOption[li].disabled == true){
- this.inDex = 4
- this.getList();
- this.MainTable = false
- } else {
- this.$confirm("返回列表,是否保存?", "提示", {
- confirmButtonText: "保存",
- cancelButtonText: "取消",
- type: "warning",
- }).then(() => {
- this.$refs.detailForm.saveRules('1')
- }).catch(() => {
- this.inDex = 4
- this.MainTable = false
- this.getList();
- });
- }
- }
- }
- },
- backSave(valid,i){
- if(valid){
- this.detailForm.fMoney = 0
- for(let li in this.detailData){
- if(this.detailData[li]){
- this.detailForm.fMoney += Number(this.detailData[li].fAmount)
- }
- }
- let formData = new window.FormData();
- formData.append('tWarehousebills', JSON.stringify(this.detailForm))
- formData.append('tWarehousebillsfees', JSON.stringify(this.detailData))
- formData.append('fBilltype', 'CK')
- addSave(formData).then(res=>{
- if(res.code == 200){
- this.detailForm = res.data.warehouseBills
- this.$set(this.detailForm,'fStorekeeper',JSON.parse(this.detailForm.fStorekeeper))
- this.detailData = res.data.tWarehousebillsCntrs
- for(let li in this.detailData){
- this.$set(this.detailData[li],'fFeeunitid',JSON.stringify(this.detailData[li].fFeeunitid))
- this.$set(this.detailData[li],'fStltypeid',JSON.stringify(this.detailData[li].fStltypeid))
- }
- this.$message.success("保存成功")
- this.getList();
- if(i == 2){
- let data = {
- fBilltype:'CK',
- fId:this.detailForm.fId
- }
- copyNew(data).then(res=>{
- if(res.code == 200) {
- this.$message.success("操作成功")
- this.copyeId = res.data
- this.getList()
- this.viewMethod(null,1)
- }
- })
- }
- if(i == 1){
- this.MainTable = false
- this.inDex = 4
- }
- }
- })
- }
- },
- //所以按钮
- buttonList(row){
- switch (row.name) {
- case '新增':
- this.detailList.columnList = this.detailStyle
- this.detailForm = {}
- this.detailData = []
- this.inDex = this.detailOption.length
- //从表修改按钮
- for(let li in this.detailStyle){
- if(!this.detailStyle[li].doNot){
- this.detailStyle[li].disabled = false
- }
- }
- for(let item in this.detailOption){
- if(!this.detailOption[item].doNot){
- this.detailOption[item].disabled = false
- }
- }
- for(let li in this.detailButton){
- this.detailButton[li].disabled = false
- }
- this.MainTable = true
- break
- case '新单':
- this.detailList.columnList = this.detailStyle
- this.detailForm = {}
- this.detailData = []
- this.inDex = this.detailOption.length
- //从表修改按钮
- for(let li in this.detailStyle){
- if(!this.detailStyle[li].doNot){
- this.detailStyle[li].disabled = false
- }
- }
- for(let item in this.detailOption){
- if(!this.detailOption[item].doNot){
- this.detailOption[item].disabled = false
- }
- }
- for(let li in this.detailButton){
- this.detailButton[li].disabled = false
- }
- break
- case '录入明细':
- this.$refs.detailForm.rules()
- break
- case '返回列表':
- this.backRules()
- break
- case '保存':
- this.$refs.detailForm.saveRules()
- break
- case '出库确认':
- if(this.detailData.length == 0){
- this.$message.error("请维护明细")
- }else{
- for(let item in this.detailData) {
- let num = Number(item) + 1
- if(!this.detailData[item].fQty){
- this.$message.error("请维护第" + num + "数量")
- return false
- }
- if (!this.detailData[item].fWarehouseid) {
- this.$message.error("请维护第" + num + "行库区")
- return false
- }
- }
- this.detailForm.fMoney = 0
- for(let li in this.detailData){
- if(this.detailData[li]){
- this.detailForm.fMoney += Number(this.detailData[li].fAmount)
- }
- }
- let formData = new window.FormData();
- formData.append('tWarehousebills', JSON.stringify(this.detailForm))
- formData.append('tWarehousebillsfees', JSON.stringify(this.detailData))
- formData.append('fBilltype', 'CK')
- addWarehous(formData).then(res=>{
- if(res.data.warehouseBills){
- this.detailForm = res.data.warehouseBills
- this.$set(this.detailForm,'fStorekeeper',JSON.parse(this.detailForm.fStorekeeper))
- }
- if(res.data.tWarehousebillsCntrs){
- this.detailData = res.data.tWarehousebillsCntrs
- for(let li in this.detailData){
- this.$set(this.detailData[li],'fFeeunitid',JSON.stringify(this.detailData[li].fFeeunitid))
- this.$set(this.detailData[li],'fStltypeid',JSON.stringify(this.detailData[li].fStltypeid))
- }
- }
- this.$message.success("操作成功")
- for(let li in this.detailStyle){
- this.detailStyle[li].disabled = true
- }
- for(let item in this.detailOption){
- this.detailOption[item].disabled = true
- }
- for(let li in this.detailButton) {
- if(this.detailButton[li].name == '录入明细' || this.detailButton[li].name == '保存' ||
- this.detailButton[li].name == '出库确认' || this.detailButton[li].name == '刷新' || this.detailButton[li].name == '修改'){
- this.detailButton[li].disabled = true
- }else{
- this.detailButton[li].disabled = false
- }
- }
- })
- }
- break
- case '刷新':
- if(this.detailForm.fId){
- getSave(this.detailForm.fId).then(res=>{
- if(res.data.warehouseBills){
- this.detailForm = res.data.warehouseBills
- this.$set(this.detailForm,'fStorekeeper',JSON.parse(this.detailForm.fStorekeeper))
- }
- if(res.data.tWarehousebillsfees){
- this.detailData = res.data.tWarehousebillsfees
- for(let li in this.detailData){
- this.$set(this.detailData[li],'fFeeunitid',JSON.stringify(this.detailData[li].fFeeunitid))
- this.$set(this.detailData[li],'fStltypeid',JSON.stringify(this.detailData[li].fStltypeid))
- }
- }
- })
- }
- break
- case '复制新增':
- let formDate = {
- fBilltype:'CK',
- fId:this.selection[0].fId
- }
- copyNew(formDate).then(res=>{
- if(res.code == 200) {
- this.$message.success("操作成功")
- this.copyeId = res.data
- this.getList()
- this.viewMethod(null,1)
- }
- })
- break
- case '复制新单':
- this.$refs.detailForm.saveRules('2')
- break
- case '打印':
- this.formList = this.detailForm
- this.dialogVisible = true
- break
- }
- if(row.name == '修改' && row.res == '0'){
- this.viewMethod()
- }
- if(row.res === 1){
- //从表修改按钮
- for(let li in this.detailStyle){
- if(!this.detailStyle[li].doNot){
- this.detailStyle[li].disabled = false
- }
- }
- for(let item in this.detailOption){
- if(!this.detailOption[item].doNot){
- this.detailOption[item].disabled = false
- }
- }
- for(let li in this.detailButton){
- this.detailButton[li].disabled = false
- }
- }
- },
- // 显示搜索条件、点击后会调用此方法
- showSearch(){
- this.getList()
- },
- //点击刷新会调用此方法
- getList(res){
- this.queryParms.fBilltype = 'CK'
- listInStock(this.queryParms).then(response=>{
- this.tableData = response.rows
- this.total = response.total
- if(res == 1){
- this.copyeId = this.tableData[0].fId
- this.viewMethod(null,1)
- }
- })
- },
- }
- }
- </script>
- <style scoped lang="scss">
- .app-container ::v-deep .el-form-item {
- margin-bottom: 4px;
- }
- .app-container ::v-deep .el-table__body-wrapper{
- z-index: 2;
- }
- </style>
|