c39f8841 by liuhejuan

spd-pad项目代码

1 parent b3dedc97
Showing 139 changed files with 4937 additions and 0 deletions
1 <?xml version="1.0" encoding="UTF-8"?>
2 <projectDescription>
3 <name>spd</name>
4 <comment></comment>
5 <projects>
6 </projects>
7 <buildSpec>
8 <buildCommand>
9 <name>com.aptana.ide.core.unifiedBuilder</name>
10 <arguments>
11 </arguments>
12 </buildCommand>
13 <buildCommand>
14 <name>com.pandora.projects.ui.MKeyBuilder</name>
15 <arguments>
16 </arguments>
17 </buildCommand>
18 </buildSpec>
19 <natures>
20 <nature>com.pandora.projects.ui.MKeyNature</nature>
21 <nature>com.aptana.projects.webnature</nature>
22 </natures>
23 <filteredResources>
24 <filter>
25 <id>1537165259397</id>
26 <name></name>
27 <type>26</type>
28 <matcher>
29 <id>org.eclipse.ui.ide.multiFilter</id>
30 <arguments>1.0-name-matches-false-false-node_modules</arguments>
31 </matcher>
32 </filter>
33 <filter>
34 <id>1537265424073</id>
35 <name></name>
36 <type>26</type>
37 <matcher>
38 <id>org.eclipse.ui.ide.multiFilter</id>
39 <arguments>1.0-name-matches-false-false-node_modules</arguments>
40 </matcher>
41 </filter>
42 <filter>
43 <id>1537983961577</id>
44 <name></name>
45 <type>26</type>
46 <matcher>
47 <id>org.eclipse.ui.ide.multiFilter</id>
48 <arguments>1.0-name-matches-false-false-node_modules</arguments>
49 </matcher>
50 </filter>
51 <filter>
52 <id>1538142712517</id>
53 <name></name>
54 <type>26</type>
55 <matcher>
56 <id>org.eclipse.ui.ide.multiFilter</id>
57 <arguments>1.0-name-matches-false-false-node_modules</arguments>
58 </matcher>
59 </filter>
60 </filteredResources>
61 </projectDescription>
1 <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="48px" height="48.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="#f2a11c" d="M868.593046 403.832442c-30.081109-28.844955-70.037123-44.753273-112.624057-44.753273L265.949606 359.079168c-42.554188 0-82.510202 15.908318-112.469538 44.690852-30.236652 28.782533-46.857191 67.222007-46.857191 108.198258l0 294.079782c0 40.977273 16.619516 79.414701 46.702672 108.136859 29.959336 28.844955 70.069869 44.814672 112.624057 44.814672l490.019383 0c42.585911 0 82.696444-15.969717 112.624057-44.814672 30.082132-28.844955 46.579875-67.222007 46.579875-108.136859L915.172921 511.968278C915.171897 471.053426 898.675178 432.677397 868.593046 403.832442zM841.821309 806.049083c0 22.098297-8.882298 42.772152-25.099654 58.306964-16.154935 15.661701-37.81935 24.203238-60.752666 24.203238L265.949606 888.559285c-22.934339 0-44.567032-8.54256-60.877509-24.264637-16.186657-15.474436-25.067932-36.148291-25.067932-58.246589L180.004165 511.968278c0-22.035876 8.881274-42.772152 25.192775-58.307987 16.186657-15.536858 37.81935-24.139793 60.753689-24.139793l490.019383 0c22.933315 0 44.597731 8.602935 60.752666 24.139793 16.21838 15.535835 25.099654 36.272112 25.099654 58.307987L841.822332 806.049083zM510.974136 135.440715c114.914216 0 208.318536 89.75214 208.318536 200.055338l73.350588 0c0-149.113109-126.366036-270.496667-281.669124-270.496667-155.333788 0-281.699824 121.383558-281.699824 270.496667l73.350588 0C302.623877 225.193879 396.059919 135.440715 510.974136 135.440715zM474.299865 747.244792l73.350588 0L547.650453 629.576859l-73.350588 0L474.299865 747.244792z" /></svg>
...\ No newline at end of file ...\ No newline at end of file
1 <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1537252931070" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1137" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M510.545 28.22c-267.043 0-483.521 216.477-483.521 483.52s216.479 483.521 483.521 483.521 483.52-216.479 483.52-483.521S777.588 28.22 510.545 28.22zM776.855 407.855l-315.37 315.37c-9.763 9.763-22.559 14.645-35.355 14.645-12.796 0-25.592-4.882-35.355-14.645l-176.13-176.13c-19.526-19.525-19.526-51.184 0-70.71 19.526-19.526 51.184-19.527 70.711 0L426.13 617.159l280.015-280.015c19.527-19.526 51.184-19.526 70.711 0C796.382 356.671 796.382 388.329 776.855 407.855z" p-id="1138" fill="#f2a11c"></path></svg>
...\ No newline at end of file ...\ No newline at end of file
1 <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1537337112042" class="icon" style="" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3922" xmlns:xlink="http://www.w3.org/1999/xlink" width="128" height="128"><defs><style type="text/css"></style></defs><path d="M515.478588 14.230588c-274.025412 0-496.941176 222.945882-496.941176 496.941176 0 274.010353 222.915765 496.926118 496.941176 496.926118 273.980235 0 496.926118-222.915765 496.926118-496.926118C1012.404706 237.176471 789.473882 14.230588 515.478588 14.230588zM801.942588 878.742588c-14.652235-145.182118-137.532235-258.846118-286.479059-258.846118-148.946824 0-271.826824 113.679059-286.464 258.846118C119.627294 793.313882 49.136941 660.374588 49.136941 511.171765c0-257.144471 209.212235-466.386824 466.356706-466.386824 257.129412 0 466.341647 209.242353 466.341647 466.386824C981.820235 660.374588 911.329882 793.344 801.942588 878.742588z" p-id="3923" fill="#f2a11c"></path><path d="M511.713882 241.829647c-89.765647 0-162.816 73.065412-162.816 162.816s73.065412 162.800941 162.816 162.800941c89.720471 0 162.785882-73.035294 162.785882-162.800941S601.434353 241.829647 511.713882 241.829647z" p-id="3924" fill="#f2a11c"></path></svg>
...\ No newline at end of file ...\ No newline at end of file
1 <?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg class="icon" width="48px" height="48.00px" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"><path fill="#f2a11c" d="M691.2 569.6c81.067-55.467 134.4-149.333 134.4-256C825.6 140.8 684.8 0 512 0S200.533 140.8 200.533 311.467c0 106.666 53.334 200.533 134.4 256C151.467 640 23.467 817.067 23.467 1024h87.466c0-204.8 155.734-375.467 354.134-398.933 2.133 0 55.466-4.267 100.266 0h4.267c194.133 27.733 343.467 194.133 343.467 396.8h89.6C1000.533 817.067 872.533 640 691.2 569.6zM512 546.133c-130.133 0-234.667-104.533-234.667-234.666C277.333 181.333 381.867 76.8 512 76.8c130.133 0 234.667 104.533 234.667 234.667 0 130.133-104.534 234.666-234.667 234.666z" /></svg>
...\ No newline at end of file ...\ No newline at end of file
1
2 <script type="text/html" id='batch_list_tpl_view'>
3 {{ each list value i}}
4 <div class="batch-wrapper">
5 <div class="checkoneParent">
6 <div class="mui-checkbox mui-left" style="width: 48px;height:48px;padding:50px 0 ;display: block;">
7 <input name="selected" class="checkone" type="checkbox" data-index="{{ (page-1)*pageSize + i }}" style="top: 35px;left: 10px;">
8 </div>
9 </div>
10 <div class="am-card scrollList-item am-card-full" style="width: 90%;border: none;"
11 data-id="{{ value.id }}"
12 data-drugCode="{{ value.drugCode }}"
13 data-isUsual="{{ value.isUsual }}"
14 data-parentId="{{ value.parentId }}"
15 data-productBatchNo="{{ value.productBatchNo }}"
16 data-realProductTime = "{{ value.realProductTime }}"
17 data-realValidEndDate = "{{ value.realValidEndDate }}"
18 data-realDeliveryQuantiry = "{{ value.realDeliveryQuantiry }}"
19 data-realReceiveQuantiry = "{{ value.realReceiveQuantiry }}"
20 data-realNum = "{{ value.realNum }}"
21 data-distributeCode="{{ value.distributeCode }}"
22 data-rowNo = "{{ value.rowNo }}"
23 >
24 <div class="am-card-header" style="padding: 9px 15px 0px 5px !important;">
25 <div class="am-card-header-content">
26 <span style="font-size: 18px; color: rgb(51, 51, 51); font-weight: bold;">
27 {{ value.ctmmGenericName ? value.ctmmGenericName:value.ctmmTradeName ? value.ctmmTradeName: '' }}</span>
28 </div>
29 <div class="am-card-header-extra">
30 <span>待验收</span>
31 </div>
32 </div>
33 <div class="am-card-body" style="padding: 5px !important;">
34 <div class="am-flexbox am-flexbox-align-center">
35 <div class="am-flexbox-item">
36 单位:<span>{{ value.unit }}</span>
37 </div>
38 <div class="am-flexbox-item">
39 规格:<span>{{ value.ctmmSpecification }}</span>
40 </div>
41 <div class="am-flexbox-item">
42 数量:<span>{{ value.realDeliveryQuantiry }}</span>
43 </div>
44 </div>
45 {{ if acceptance }}
46 {{ if value.isUsual === 0 && checkType === 1 && (isPsList || barcode)}}
47 <div class="editForm" style="display: block;">
48 <div class="am-flexbox am-flexbox-align-center">
49 <div class="am-flexbox-item">
50 <div class="am-list-item am-input-item am-list-item-middle">
51 <div class="am-list-line">
52 <div class="am-input-label am-input-label-4 font-warning">实到数量:</div>
53 <div class="am-input-control">
54 <input pattern="[0-9]*" type="number" value="{{ value.realNum ? value.realNum: value.realDeliveryQuantiry }}" data-index="{{ i }}" placeholder="请输入" class="realReceiveQuantiry flex-item-input" />
55 </div>
56 </div>
57 </div>
58 </div>
59 <div class="am-flexbox-item">
60 <div class="am-list-item am-input-item am-list-item-middle">
61 <div class="am-list-line">
62 <div class="am-input-label am-input-label-5 font-warning">生产日期:</div>
63 <div class="am-input-control">
64 <input pattern="[0-9]*" type="date" value="{{ value.realProductTime }}" data-index="{{ i }}" placeholder="请输入" class="realProductTime flex-item-input" />
65 </div>
66 </div>
67 </div>
68 </div>
69 <div class="am-flexbox-item">
70 <div class="am-list-item am-input-item am-list-item-middle">
71 <div class="am-list-line">
72 <div class="am-input-label am-input-label-5 font-warning">有效期至:</div>
73 <div class="am-input-control">
74 <input pattern="[0-9]*" type="date" value="{{ value.realValidEndDate }}" data-index="{{ i }}" placeholder="请输入" class="realValidEndDate flex-item-input" />
75 </div>
76 </div>
77 </div>
78 </div>
79 </div>
80 <div class="am-flexbox am-flexbox-align-center">
81 <div class="am-flexbox-item">
82 <div class="am-list-item am-input-item am-list-item-middle">
83 <div class="am-list-line">
84 <div class="am-input-label am-input-label-4 font-warning">生产批号:</div>
85 <div class="am-input-control">
86 <input pattern="[0-9]*" type="text" value="{{ value.productBatchNo }}" placeholder="请输入" class="productBatchNo flex-item-input"/>
87 </div>
88 </div>
89 </div>
90 </div>
91 <div class="am-flexbox-item">
92 指示货位:<span>{{ value.replanStoreName }}</span>
93 </div>
94 {{ if isShowTemprature === 1 }}
95 <div class="am-flexbox-item">
96 <div class="am-list-item am-input-item am-list-item-middle">
97 <div class="am-list-line">
98 <div class="am-input-label am-input-label-4 font-warning">验收温度:</div>
99 <div class="am-input-control">
100 <input pattern="[0-9]*" type="number" value="{{ value.realAcceptanceTemperature ? value.realAcceptanceTemperature: '' }}" placeholder="请输入" class="realAcceptanceTemperature flex-item-input"/>
101 </div>
102 </div>
103 </div>
104 </div>
105 {{ else }}
106 {{ /if }}
107 </div>
108 </div>
109 {{ else }}
110 <div class="am-flexbox am-flexbox-align-center">
111 <div class="am-flexbox-item">
112 实到数量:<span class='errorQuantiry'>{{ value.realNum }}</span>
113 </div>
114 <div class="am-flexbox-item am-last-flexItem">
115 生产日期:<span class="errRealProductTime">{{ value.realProductTime }}</span>
116 </div>
117 <div class="am-flexbox-item am-last-flexItem">
118 有效期至:<span class="errVailEndDate">{{ value.realValidEndDate }}</span>
119 </div>
120 </div>
121
122 {{ /if }}
123 <div class="am-flexbox am-flexbox-align-center">
124 <div class="am-flexbox-item">
125 批准文号:<span>{{ value.approvalNo }}</span>
126 </div>
127 {{ if checkType !== 1}}
128 <div class="am-flexbox-item">
129 指示货位: <span>{{ value.replanStoreName }}</span>
130 </div>
131 {{ /if }}
132 <div class="am-flexbox-item am-last-flexItem" style="margin-left: -50px;">
133 生产厂家:<span>{{ value.ctmmManufacturerName }}</span>
134 </div>
135 </div>
136 {{ /if }}
137 </div>
138 </div>
139 </div>
140 {{/each}}
141 </script>
...\ No newline at end of file ...\ No newline at end of file
1 <script type="text/html" id='detail_tpl'>
2 <div style="margin-top:10px;">
3 {{ each list value i }}
4 <ul class="mui-table-view" style="margin-bottom:8px;">
5 <li class="mui-table-view-cell mui-collapse mui-active">
6 <a class="mui-navigate-right" href="#">单据信息</a>
7 <div class="mui-collapse-content">
8 <div class="mui-input-row">
9 <label>配送/验收单</label>
10 <p class="detailRow_content">{{ distributeCode ? distributeCode: '' }}</p>
11 </div>
12 <div class="mui-input-row">
13 <label>状态</label>
14 <p class="detailRow_content">{{ value.status ? value.status === 1 ? '待验收':'已验收': '' }}</p>
15 </div>
16 <div class="mui-input-row">
17 <label>类型</label>
18 <p class="detailRow_content">{{ typeName ? typeName: '' }}</p>
19 </div>
20 </div>
21 </li>
22 </ul>
23 <ul class="mui-table-view" style="margin-bottom:8px;">
24 <li class="mui-table-view-cell mui-collapse mui-active">
25 <a class="mui-navigate-right" href="#">产品信息</a>
26 <div class="mui-collapse-content">
27 <div class="mui-input-row">
28 <label>通用名称</label>
29 <p class="detailRow_content">{{value && value.ctmmGenericName ? value.ctmmGenericName: ''}}</p>
30 </div>
31 <div class="mui-input-row">
32 <label>商品名</label>
33 <p class="detailRow_content">{{value && value.ctmmTradeName ? value.ctmmTradeName: ''}}</p>
34 </div>
35 <div class="mui-input-row">
36 <label>规格</label>
37 <p class="detailRow_content">{{value && value.ctmmSpecification? value.ctmmSpecification:''}}</p>
38 </div>
39 <div class="mui-input-row">
40 <label>剂型</label>
41 <p class="detailRow_content">{{value && value.ctmmDosageFormDesc ? value.ctmmDosageFormDesc:''}}</p>
42 </div>
43 <div class="mui-input-row">
44 <label>生产厂家</label>
45 <p class="detailRow_content">{{value && value.ctmmManufacturerName ? value.ctmmManufacturerName: ''}}</p>
46 </div>
47 <div class="mui-input-row">
48 <label>批准文号</label>
49 <p class="detailRow_content">{{ value && value.approvalNo ? value.approvalNo: ''}}</p>
50 </div>
51 <div class="mui-input-row">
52 <label>包装规格</label>
53 <p class="detailRow_content">{{value && value.packageSpecification ? value.packageSpecification: ''}}</p>
54 </div>
55 <div class="mui-input-row">
56 <label>单位</label>
57 <p class="detailRow_content">{{ value && value.unit ? value.unit: ''}}</p>
58 </div>
59 <div class="mui-input-row">
60 {{ if (isPsList || barcode) && value.status === 1 && value.isUsual === 0 && checkType === 1}}
61 <label class="font-warning">生产批号</label>
62 <input class="mui-input editInput BatchNo" value="{{ value && value.productBatchNo ? value.productBatchNo: ''}}" />
63 {{ else }}
64 <label>生产批号</label>
65 <p class="detailRow_content">{{ value && value.productBatchNo ?value.productBatchNo: ''}}</p>
66 {{ /if }}
67 </div>
68 <div class="mui-input-row">
69 {{ if (isPsList || barcode) && value.status === 1 && value.isUsual === 0 && checkType === 1}}
70 <label class="font-warning">生产日期</label>
71 <input class="mui-input editInput realProductTime" type='date' value="{{ value && value.realProductTime ? value.realProductTime: ''}}" />
72 {{ else }}
73 <label>生产日期</label>
74 <p class="detailRow_content">{{value && value.realProductTime ? value.realProductTime: ''}}</p>
75 {{ /if }}
76
77 </div>
78 <div class="mui-input-row">
79 <label>指示货位</label>
80 <p class="detailRow_content">{{value && value.replanStoreName ? value.replanStoreName: ''}}</p>
81 </div>
82 <div class="mui-input-row">
83 {{ if (isPsList || barcode) && value.status === 1 && isUsual === 0 && checkType === 1}}
84 <label class="font-warning">有效期至</label>
85 <input class="mui-input editInput realValidEndDate" type='date' value="{{ value && value.realValidEndDate ? value.realValidEndDate: '' }}" />
86 {{ else }}
87 <label>有效期至</label>
88 <p class="detailRow_content">{{value && value.realValidEndDate ? value.realValidEndDate: ''}}</p>
89 {{ /if }}
90 </div>
91 {{ if isShowTemprature === 1 }}
92 <div class="mui-input-row">
93 {{ if (isPsList || barcode) && value.status === 1 && isUsual === 0 && checkType === 1}}
94 <label class="font-warning">验收温度(℃)</label>
95 <input class="mui-input editInput realAcceptanceTemperature" type='number' value="{{ value && value.realAcceptanceTemperature ? value.realAcceptanceTemperature: ''}}" />
96 {{ else }}
97 <label>验收温度(℃)</label>
98 <p class="detailRow_content">{{value && value.realAcceptanceTemperature ? value.realAcceptanceTemperature: ''}}</p>
99 {{ /if }}
100 </div>
101 {{ /if }}
102 <div class="mui-input-row">
103 <label>配送数量</label>
104 <p class="detailRow_content">{{ value && value.realDeliveryQuantiry ? value.realDeliveryQuantiry: 0 }}</p>
105 </div>
106 <div class="mui-input-row">
107 {{ if (isPsList || barcode) && value.status === 1 && isUsual === 0 && checkType === 1}}
108 <label class="font-warning">实到数量</label>
109 <input class="mui-input editInput realReceiveQuantiry" type="number" pattern="[0-9]*" value="{{ value && value.realNum ? value.realNum: value && value.realDeliveryQuantiry ? value.realDeliveryQuantiry: '' }}" />
110 {{ else }}
111 <label>实到数量</label>
112 <p class="detailRow_content">{{value && value.isUsual === 0 && value.realNum ? value.realNum: 0 }}</p>
113 {{ /if }}
114 </div>
115 <div class="mui-input-row">
116 <label>供应商</label>
117 <p class="detailRow_content">{{value && value.supplierName ? value.supplierName: ''}}</p>
118 </div>
119 </div>
120 </li>
121 </ul>
122 {{ /each }}
123 </div>
124 </script>
...\ No newline at end of file ...\ No newline at end of file
1
2 <script type="text/html" id='list_tpl_view'>
3 {{ each list value i}}
4 <div class="am-card scrollList-item am-card-full"
5 data-id="{{ value.id }}"
6 data-isUsual="{{ value.isUsual }}"
7 data-drugCode = "{{ value.drugCode }}"
8 data-parentId = "{{ value.parentId ? value.parentId:'-' }}"
9 data-realReceiveQuantiry = "{{ value.realReceiveQuantiry }}"
10 data-realNum = "{{ value.realNum }}"
11 data-realProductTime = "{{ value.realProductTime }}"
12 data-productBatchNo = "{{ value.productBatchNo}}"
13 data-realValidEndDate = "{{ value.realValidEndDate }}"
14 data-realDeliveryQuantiry = "{{ value.realDeliveryQuantiry }}"
15 data-distributeCode="{{ value.distributeCode }}"
16 >
17 <div class="am-card-header">
18 <div class="am-card-header-content">
19 <span style="font-size: 18px; color: rgb(51, 51, 51); font-weight: bold;">
20 {{ value.ctmmGenericName ? value.ctmmGenericName:value.ctmmTradeName ? value.ctmmTradeName: '' }}</span>
21 </div>
22 <div class="am-card-header-extra">
23 <span>{{ value.type }}</span>
24 </div>
25 </div>
26 <div class="am-card-body">
27 <div class="am-flexbox am-flexbox-align-center">
28 <div class="am-flexbox-item">
29 单位:<span>{{ value.unit }}</span>
30 </div>
31 <div class="am-flexbox-item">
32 规格:<span>{{ value.ctmmSpecification }}</span>
33 </div>
34 <div class="am-flexbox-item">
35 数量:<span>{{ value.realDeliveryQuantiry }}</span>
36 </div>
37 </div>
38 {{ if acceptance }}
39 {{ if value.isUsual === 0 && checkType === 1 && (isPsList || barcode)}}
40 <div class="editForm" data-index="{{i}}" style="display: block;">
41 <div class="am-flexbox am-flexbox-align-center">
42 <div class="am-flexbox-item">
43 <div class="am-list-item am-input-item am-list-item-middle">
44 <div class="am-list-line">
45 <div class="am-input-label am-input-label-4 font-warning">实到数量:</div>
46 <div class="am-input-control">
47 <input pattern="[0-9]*" type="number" value="{{ value.realNum ? value.realNum: value.realDeliveryQuantiry }}" data-index="{{i}}" placeholder="请输入" class="realReceiveQuantiry flex-item-input"/>
48 </div>
49 </div>
50 </div>
51 </div>
52 <div class="am-flexbox-item">
53 <div class="am-list-item am-input-item am-list-item-middle">
54 <div class="am-list-line">
55 <div class="am-input-label am-input-label-5 font-warning">生产日期:</div>
56 <div class="am-input-control">
57 <input pattern="[0-9]*" type="date" value="{{ value.realProductTime }}" data-index="{{i}}" placeholder="请输入" class="realProductTime flex-item-input" />
58 </div>
59 </div>
60 </div>
61 </div>
62 <div class="am-flexbox-item">
63 <div class="am-list-item am-input-item am-list-item-middle">
64 <div class="am-list-line">
65 <div class="am-input-label am-input-label-5 font-warning">有效期至:</div>
66 <div class="am-input-control">
67 <input pattern="[0-9]*" type="date" value="{{ value.realValidEndDate }}" data-index="{{i}}" placeholder="请输入" class="realValidEndDate flex-item-input" />
68 </div>
69 </div>
70 </div>
71 </div>
72 </div>
73 <div class="am-flexbox am-flexbox-align-center">
74 <div class="am-flexbox-item">
75 <div class="am-list-item am-input-item am-list-item-middle">
76 <div class="am-list-line">
77 <div class="am-input-label am-input-label-4 font-warning">生产批号:</div>
78 <div class="am-input-control">
79 <input pattern="[0-9]*" type="text" value="{{ value.productBatchNo }}" placeholder="请输入" class="productBatchNo flex-item-input"/>
80 </div>
81 </div>
82 </div>
83 </div>
84 <div class="am-flexbox-item">
85 指示货位:<span>{{ value.replanStoreName }}</span>
86 </div>
87 {{ if isShowTemprature === 1 }}
88 <div class="am-flexbox-item">
89 <div class="am-list-item am-input-item am-list-item-middle">
90 <div class="am-list-line">
91 <div class="am-input-label am-input-label-4 font-warning">验收温度:</div>
92 <div class="am-input-control">
93 <input pattern="[0-9]*" type="number" value="{{ value.realAcceptanceTemperature ? value.realAcceptanceTemperature: '' }}" placeholder="请输入" class="realAcceptanceTemperature flex-item-input"/>
94 </div>
95 </div>
96 </div>
97 </div>
98 {{ else }}
99 {{ /if }}
100 </div>
101 </div>
102 {{ else }}
103 <div class="am-flexbox am-flexbox-align-center">
104 <div class="am-flexbox-item">
105 实到数量:<span>{{ value.realNum }}</span>
106 </div>
107 <div class="am-flexbox-item am-last-flexItem">
108 生产日期:<span>{{ value.realProductTime }}</span>
109 </div>
110 <div class="am-flexbox-item am-last-flexItem">
111 有效期至:<span>{{ value.realValidEndDate }}</span>
112 </div>
113 </div>
114 {{ /if }}
115 <div class="am-flexbox am-flexbox-align-center">
116 <div class="am-flexbox-item">
117 批准文号: <span>{{ value.approvalNo }}</span>
118 </div>
119 {{ if checkType !== 1}}
120 <div class="am-flexbox-item">
121 指示货位: <span>{{ value.replanStoreName }}</span>
122 </div>
123 {{ /if }}
124 <div class="am-flexbox-item am-last-flexItem">
125 生产厂家: <span>{{ value.ctmmManufacturerName }}</span>
126 </div>
127
128 </div>
129 {{ /if }}
130 </div>
131 <div class="am-card-footer">
132 <div class="am-card-footer-content"></div>
133 <div class="am-card-footer-extra">
134 {{ if acceptance && value.isUsual === 0 && value.showEditBtn }}
135 <button type="button" class="mui-btn mui-btn-blue mui-btn-outlined edit" data-id="{{ value.id }}" data-index="{{i}}">收起编辑</button>
136 {{ /if }}
137 <button type="button" class="mui-btn mui-btn-blue mui-btn-outlined moreDetail" data-distributeCode="{{ value.distributeCode }}" data-id="{{ value.id }}" data-index="{{i}}" style="margin: 0 5px;">更多详情</button>
138 {{ if acceptance }}
139 <button type="button" class="mui-btn mui-btn-blue mui-btn-danger acceptance" data-rowNo="{{ value.rowNo }}" data-distributeCode="{{ value.distributeCode }}" data-id="{{ value.id }}" data-index="{{i}}">确认验收</button>
140 {{ /if }}
141
142 </div>
143 </div>
144 </div>
145 <div style="background-color: #f5f5f9; height: 6px;">
146 </div>
147 {{/each}}
148 </script>
...\ No newline at end of file ...\ No newline at end of file
1 <!--验收 - 详情页 - wwb-->
2 <!doctype html>
3 <html>
4 <head>
5 <meta charset="UTF-8">
6 <title></title>
7 <link rel="import" href="./detail_tpl.html" id="acc_detail_tpl"/>
8 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
9 <link href="../../css/mui.min.css" rel="stylesheet" />
10 <link href="../../css/themes.css" rel="stylesheet" />
11 <link href="../../css/check.css" rel="stylesheet"/>
12 <link href="../../css/index_view.css" rel="stylesheet" />
13
14 </head>
15
16 <body>
17 <div class="mui-content detailRow">
18 <form class="mui-input-group" id="detailContent" style="background:none;">
19 <ul class="mui-table-view" style="margin-bottom:12px;">
20 <li class="mui-table-view-cell mui-collapse">
21 <a class="mui-navigate-right" href="#">产品信息</a>
22 <div class="mui-collapse-content">
23
24 </div>
25 </li>
26 </ul>
27 </form>
28 <form id="List">
29
30 </form>
31 </div>
32
33 <script src="../../js/mui.min.js"></script>
34 <script src="../../js/template-web.js" type="text/javascript" charset="utf-8"></script>
35 <script src="../../js/utils.js" type="text/javascript" charset="utf-8"></script>
36 <script src="../../js/common.js" type="text/javascript" charset="utf-8"></script>
37 <script type="text/javascript" src="../../js/request.js" ></script>
38 <script type="text/javascript">
39
40 (function($) {
41 var utils = new Utils();
42 utils.appendModule('#acc_detail_tpl');
43
44 function showData(data){
45 var html = template('detail_tpl', data);
46 if(html){
47 document.getElementById('detailContent').innerHTML = html;
48 }
49
50 }
51 var checkType = undefined,
52 type = undefined,
53 data = null,
54 details = undefined,
55 url = '/a/exam/detail', // 分页接口
56 titleUrl = '/a/exam/detailhead',// 头部接口
57 checkUrl = '/a/checkacceptdetail/basemedic'; // 验收接口
58 $.plusReady(function(){
59 $.init({
60 beforeback: function() {
61 var list = plus.webview.currentWebview().opener();
62 console.log(details.selectTabs)
63 mui.fire(list, 'pagefresh',{ selectTabs: details.selectTabs === 1 ? '1': '0' , query: details.query });
64 return true;
65 }
66 })
67
68 var self = plus.webview.currentWebview();
69 details = JSON.parse(self.details);//获得参数
70 checkType = details.checkType;
71 status = details.status;
72 console.log(JSON.stringify(details) );
73 console.log(typeof details.selectTabs)
74 var postData = {
75 distributeCode: details.distributeCode,
76 status: details.status,
77 id: details.id
78 };
79 var detailData = {};
80 plus.nativeUI.showWaiting('加载中...');
81 mui.ajaxRequest(titleUrl,{
82 type: 'POST',
83 data: { distributeCode: postData.distributeCode },
84 success: function(data){
85 if(data.code === 200){
86 console.log('titleUrl*****************')
87 console.log(JSON.stringify(data))
88 for(var key in data.data){
89 detailData[key] = data.data[key];
90 detailData.isPsList = details.isPsList;
91 }
92 mui.ajaxRequest(url,{
93 type: 'POST',
94 data: postData,
95 success: function(data){
96 console.log('url*****************')
97 console.log(JSON.stringify(data))
98 plus.nativeUI.closeWaiting();
99 if(data.code === 200){
100 detailData.list = data.data.list;
101 console.log(detailData)
102 showData(detailData);
103 if(details.hasAcceptance){
104 setTimeout(function(){
105 // showOrHideBtn()
106 var acceptanceBtn = '<button type="button" id="acceptance" class="mui-btn mui-btn-warning mui-btn-block" style="margin-bottom: 20px;" data-loading-text = "提交中" data-loading-icon-position="right">确认验收</button>'
107 document.querySelector('.detailRow').insertAdjacentHTML("beforeEnd",acceptanceBtn);
108 },100)
109 }
110
111 }else{
112 mui.toast(data.msg,{ type: 'div' });
113 }
114 },
115 error: function(xhr,type,errorThrown){
116 console.log(xhr.responseText)
117 }
118 });
119 }else{
120 mui.toast(data.msg,{ type: 'div' });
121 }
122
123 },
124 error: function(xhr,type,errorThrown){
125 console.log(xhr.responseText)
126 }
127 });
128
129 // checkType 1 2 4 配送单 可编辑 其余 出库单 不能编辑
130 // 验收
131 mui('.detailRow').on('tap','#acceptance',function(event){
132 let postData = [], submitData = {}, values = {};
133 values.productBatchNo = detailData.list[0].productBatchNo;
134 values.realProductTime = detailData.list[0].realProductTime;
135 values.realValidEndDate = detailData.list[0].realValidEndDate;
136 if(defaultStatus.isShowTemprature === 1){
137 values.realAcceptanceTemperature = detailData.list[0].realAcceptanceTemperature;
138 }
139 values.realReceiveQuantiry = detailData.list[0].realReceiveQuantiry;
140 values.drugCode = detailData.list[0].drugCode;
141 values.isUsual = detailData.list[0].isUsual;
142 values.id = detailData.list[0].id;
143 values.parentId = detailData.list[0].id;
144 postData.push(values);
145 submitData.detailList = postData;
146 submitData.distributeCode = detailData.distributeCode;
147 let count = 0;
148 mui.each(submitData.detailList,function(index,item){
149 count += Number(item.realReceiveQuantiry)
150 });
151 if(count > detailData.list[0].realReceiveQuantiry){
152 mui.toast('请注意:实到数量比配送数量多');
153 }
154 console.log(submitData,'submitData'); // 批号 数据
155 document.activeElement.blur(); // 隐藏软键盘
156 var btnArray = ['否', '是'];
157 mui.confirm('是否确认验收?', '确认', btnArray, function(e) {
158 if (e.index == 1) {
159 mui.ajaxRequest(checkUrl,{
160 type: 'POST',
161 data: submitData,
162 showWaiting: true,
163 contentType: "application/json",
164 success: function(data){
165 if(data.code === 200){
166 mui.toast('验收成功',{ type: 'div' });
167 var page = plus.webview.getWebviewById('basic_acc_list');
168 mui.fire(page,'pagefresh',{ selectTabs: '1', query:{} });
169 common.gotowin('basic_acc_list',{ });
170 plus.webview.currentWebview().close();
171 }
172 },
173 error: function(xhr,type,errorThrown){
174 console.log(xhr.responseText)
175 }
176 })
177 }
178 },'div')
179 })
180 })
181 })(mui);
182
183 </script>
184 </body>
185
186 </html>
...\ No newline at end of file ...\ No newline at end of file
1
2 <script type="text/html" id='list_tpl_view'>
3 {{ each list value i}}
4 <div class="batch-wrapper">
5 <div>
6 <div class="mui-checkbox mui-left" style="width: 48px;">
7 <input name="selected" class="checkone" type="checkbox" data-index="{{ (page-1)*pageSize + i }}" style="top: -10px;left: 10px;">
8 </div>
9 </div>
10 <div class="am-card scrollList-item am-card-full" style="width: 90%;border: none;"
11 data-id="{{ value.id }}"
12 data-drugCode="{{ value.drugCode }}"
13 data-isUsual="{{ value.isUsual }}"
14 data-parentId="{{ value.parentId }}"
15 data-productBatchNo="{{ value.productBatchNo }}"
16 >
17 <div class="am-card-header" style="padding: 9px 15px 0px 5px !important;">
18 <div class="am-card-header-content">
19 <span style="font-size: 18px; color: rgb(51, 51, 51); font-weight: bold;">
20 {{ value.ctmmGenericName ? value.ctmmGenericName:value.ctmmTradeName ? value.ctmmTradeName: '' }}</span>
21 </div>
22 <div class="am-card-header-extra">
23 <span>待验收</span>
24 </div>
25 </div>
26 <div class="am-card-body" style="padding: 5px !important;">
27 <div class="am-flexbox am-flexbox-align-center">
28 <div class="am-flexbox-item">
29 单位:<span>{{ value.unit }}</span>
30 </div>
31 <div class="am-flexbox-item">
32 规格:<span>{{ value.ctmmSpecification }}</span>
33 </div>
34 <div class="am-flexbox-item">
35 数量:<span>{{ value.realDeliveryQuantiry }}</span>
36 </div>
37 </div>
38 {{ if acceptance }}
39 {{ if value.editable && value.isUsual === 0 }}
40 <!--<div class="editForm" style="display: block;">
41 <div class="am-flexbox am-flexbox-align-center">
42 <div class="am-flexbox-item">
43 <div class="am-list-item am-input-item am-list-item-middle">
44 <div class="am-list-line">
45 <div class="am-input-label am-input-label-4 font-warning">实到数量:</div>
46 <div class="am-input-control">
47 <input pattern="[0-9]*" type="number" value={{ value.realReceiveQuantiry?value.realReceiveQuantiry: '' }} placeholder="请输入" class="realReceiveQuantity flex-item-input" />
48 </div>
49 </div>
50 </div>
51 </div>
52 <div class="am-flexbox-item">
53 <div class="am-list-item am-input-item am-list-item-middle">
54 <div class="am-list-line">
55 <div class="am-input-label am-input-label-5 font-warning">生产日期:</div>
56 <div class="am-input-control">
57 <input pattern="[0-9]*" type="date" value={{ value.realProductTime }} placeholder="请输入" class="realProductTime flex-item-input" />
58 </div>
59 </div>
60 </div>
61 </div>
62 <div class="am-flexbox-item">
63 <div class="am-list-item am-input-item am-list-item-middle">
64 <div class="am-list-line">
65 <div class="am-input-label am-input-label-5 font-warning">有效期至:</div>
66 <div class="am-input-control">
67 <input pattern="[0-9]*" type="date" value={{ value.realValidEndDate }} placeholder="请输入" class="realValidEndDate flex-item-input" />
68 </div>
69 </div>
70 </div>
71 </div>
72 </div>
73 <div class="am-flexbox am-flexbox-align-center">
74 <div class="am-flexbox-item">
75 <div class="am-list-item am-input-item am-list-item-middle">
76 <div class="am-list-line">
77 <div class="am-input-label am-input-label-4 font-warning">生产批号:</div>
78 <div class="am-input-control">
79 <input pattern="[0-9]*" type="text" value={{ value.productBatchNo }} placeholder="请输入" class="productBatchNo flex-item-input"/>
80 </div>
81 </div>
82 </div>
83 </div>
84 {{ if isShowTemprature === 1 }}
85 <div class="am-flexbox-item">
86 <div class="am-list-item am-input-item am-list-item-middle">
87 <div class="am-list-line">
88 <div class="am-input-label am-input-label-4 font-warning">验收温度:</div>
89 <div class="am-input-control">
90 <input pattern="[0-9]*" type="number" value={{ value.realAcceptanceTemperature ? value.realAcceptanceTemperature: '' }} placeholder="请输入" class="realAcceptanceTemperature flex-item-input"/>
91 </div>
92 </div>
93 </div>
94 </div>
95 {{ else }}
96 <div class="am-flexbox-item">
97
98 </div>
99 {{ /if }}
100
101 <div class="am-flexbox-item">
102
103 </div>
104 </div>
105 </div>-->
106 {{ else }}
107
108 <div class="am-flexbox am-flexbox-align-center">
109 <div class="am-flexbox-item">
110 实到数量:<span class='errorQuantiry'>{{ value.realReceiveQuantiry || value.realReceiveQuantiry === 0 ? value.realReceiveQuantiry: '' }}</span>
111 </div>
112 <div class="am-flexbox-item am-last-flexItem">
113 生产日期:<span class="errRealProductTime">{{ value.realProductTime }}</span>
114 </div>
115 <div class="am-flexbox-item am-last-flexItem">
116 有效期至:<span class="errVailEndDate">{{ value.realValidEndDate }}</span>
117 </div>
118 </div>
119
120 {{ /if }}
121 <div class="am-flexbox am-flexbox-align-center">
122 <div class="am-flexbox-item">
123 批准文号:<span>{{ value.approvalNo }}</span>
124 </div>
125 <div class="am-flexbox-item am-last-flexItem" style="margin-left: -50px;">
126 生产厂家:<span>{{ value.ctmmManufacturerName }}</span>
127 </div>
128 </div>
129 {{ /if }}
130 </div>
131 </div>
132 </div>
133 {{/each}}
134 </script>
...\ No newline at end of file ...\ No newline at end of file
1 <script type="text/html" id='detail_tpl'>
2 <div style="margin-top:10px;">
3 {{ each list value i }}
4 <ul class="mui-table-view" style="margin-bottom:8px;">
5 <li class="mui-table-view-cell mui-collapse mui-active">
6 <a class="mui-navigate-right" href="#">单据信息</a>
7 <div class="mui-collapse-content">
8 <div class="mui-input-row">
9 <label>配送/验收单</label>
10 <p class="detailRow_content">{{ distributeCode ? distributeCode: '' }}</p>
11 </div>
12 <div class="mui-input-row">
13 <label>状态</label>
14 <p class="detailRow_content">{{ value.status ? value.status === 1 ? '待验收':'已验收': '' }}</p>
15 </div>
16 <div class="mui-input-row">
17 <label>类型</label>
18 <p class="detailRow_content">{{ typeName ? typeName: '' }}</p>
19 </div>
20 </div>
21 </li>
22 </ul>
23 <ul class="mui-table-view" style="margin-bottom:8px;">
24 <li class="mui-table-view-cell mui-collapse mui-active">
25 <a class="mui-navigate-right" href="#">产品信息</a>
26 <div class="mui-collapse-content">
27 <div class="mui-input-row">
28 <label>通用名称</label>
29 <p class="detailRow_content">{{value.ctmmGenericName}}</p>
30 </div>
31 <div class="mui-input-row">
32 <label>商品名</label>
33 <p class="detailRow_content">{{value.ctmmTradeName}}</p>
34 </div>
35 <div class="mui-input-row">
36 <label>规格</label>
37 <p class="detailRow_content">{{value.ctmmSpecification}}</p>
38 </div>
39 <div class="mui-input-row">
40 <label>剂型</label>
41 <p class="detailRow_content">{{value.ctmmDosageFormDesc}}</p>
42 </div>
43 <div class="mui-input-row">
44 <label>生产厂家</label>
45 <p class="detailRow_content">{{value.ctmmManufacturerName}}</p>
46 </div>
47 <div class="mui-input-row">
48 <label>批准文号</label>
49 <p class="detailRow_content">{{value.approvalNo}}</p>
50 </div>
51 <div class="mui-input-row">
52 <label>包装规格</label>
53 <p class="detailRow_content">{{value.packageSpecification}}</p>
54 </div>
55 <div class="mui-input-row">
56 <label>单位</label>
57 <p class="detailRow_content">{{value.unit}}</p>
58 </div>
59 <div class="mui-input-row">
60 {{ if (accepttype === '101' || accepttype === '102' || accepttype === '103'|| accepttype === '104') && hasAcceptance && value.isUsual === 0 }}
61 <label class="font-warning">生产批号</label>
62 <input class="mui-input editInput BatchNo" value="{{ value.productBatchNo }}" />
63 {{ else }}
64 <label>生产批号</label>
65 <p class="detailRow_content">{{value.productBatchNo}}</p>
66 {{ /if }}
67 </div>
68 <div class="mui-input-row">
69 {{ if (accepttype === '101' || accepttype === '102' || accepttype === '103'|| accepttype === '104') && hasAcceptance && value.isUsual === 0 }}
70 <label class="font-warning">生产日期</label>
71 <input class="mui-input editInput realProductTime" type='date' value="{{ value.realProductTime }}" />
72 {{ else }}
73 <label>生产日期</label>
74 <p class="detailRow_content">{{value.realProductTime}}</p>
75 {{ /if }}
76
77 </div>
78 <div class="mui-input-row">
79 {{ if (accepttype === '101' || accepttype === '102' || accepttype === '103' || accepttype === '104') && hasAcceptance && value.isUsual === 0 }}
80 <label class="font-warning">有效期至</label>
81 <input class="mui-input editInput realValidEndDate" type='date' value="{{ value.realValidEndDate }}" />
82 {{ else }}
83 <label>有效期至</label>
84 <p class="detailRow_content">{{value.realValidEndDate}}</p>
85 {{ /if }}
86 </div>
87 {{ if isShowTemprature === 1 }}
88 <div class="mui-input-row">
89 {{ if (accepttype === '101' || accepttype === '102' || accepttype === '103'|| accepttype === '104') && hasAcceptance && value.isUsual === 0 }}
90 <label class="font-warning">验收温度(℃)</label>
91 <input class="mui-input editInput realAcceptanceTemperature" type='number' value="{{ value.realAcceptanceTemperature}}"/>
92 {{ else }}
93 <label>验收温度(℃)</label>
94 <p class="detailRow_content">{{value.realAcceptanceTemperature}}</p>
95 {{ /if }}
96 </div>
97 {{ /if }}
98 <div class="mui-input-row">
99 <label>配送数量</label>
100 <p class="detailRow_content">{{value.realDeliveryQuantiry}}</p>
101 </div>
102 <div class="mui-input-row">
103 {{ if (accepttype === '101' || accepttype === '102' || accepttype === '103' ||accepttype === '104') && hasAcceptance && value.isUsual === 0 }}
104 <label class="font-warning">实到数量</label>
105 <input class="mui-input editInput realReceiveQuantiry" type="number" pattern="[0-9]*" value="{{ value.realReceiveQuantiry ? value.realReceiveQuantiry: value.realDeliveryQuantiry }}" />
106 {{ else }}
107 <label>实到数量</label>
108 <p class="detailRow_content">{{value.isUsual === 0 && value.realReceiveQuantiry ? value.realReceiveQuantiry: 0 }}</p>
109 {{ /if }}
110 </div>
111 <div class="mui-input-row">
112 <label>供应商</label>
113 <p class="detailRow_content">{{value.supplierName}}</p>
114 </div>
115 </div>
116 </li>
117 </ul>
118 {{ /each }}
119 </div>
120 </script>
...\ No newline at end of file ...\ No newline at end of file
1
2 <script type="text/html" id='list_tpl_view'>
3 {{ each list value i}}
4 <div class="am-card scrollList-item am-card-full"
5 data-id="{{ value.id }}"
6 data-isUsual="{{ value.isUsual }}"
7 data-drugCode="{{ value.drugCode }}"
8 data-parentId="{{ value.parentId }}"
9 >
10 <div class="am-card-header">
11 <div class="am-card-header-content">
12 <span style="font-size: 18px; color: rgb(51, 51, 51); font-weight: bold;">
13 {{ value.ctmmGenericName ? value.ctmmGenericName:value.ctmmTradeName ? value.ctmmTradeName: '' }}</span>
14 </div>
15 <div class="am-card-header-extra">
16 <span>{{ value.type }}</span>
17 </div>
18 </div>
19 <div class="am-card-body">
20 <div class="am-flexbox am-flexbox-align-center">
21 <div class="am-flexbox-item">
22 单位:<span>{{ value.unit }}</span>
23 </div>
24 <div class="am-flexbox-item">
25 规格:<span>{{ value.ctmmSpecification }}</span>
26 </div>
27 <div class="am-flexbox-item">
28 数量:<span>{{ value.realDeliveryQuantiry }}</span>
29 </div>
30 </div>
31 <div class="am-flexbox am-flexbox-align-center">
32 <div class="am-flexbox-item">
33 实到数量:<span>{{ value.realReceiveQuantiry }}</span>
34 </div>
35 <div class="am-flexbox-item am-last-flexItem">
36 生产日期:<span>{{ value.realProductTime }}</span>
37 </div>
38 <div class="am-flexbox-item am-last-flexItem">
39 有效期至:<span>{{ value.realValidEndDate }}</span>
40 </div>
41 </div>
42 <div class="am-flexbox am-flexbox-align-center">
43 <div class="am-flexbox-item">
44 批准文号:<span>{{ value.approvalNo }}</span>
45 </div>
46 <div class="am-flexbox-item">
47 指示货位:<span>{{ value.replanStoreName }}</span>
48 </div>
49 <div class="am-flexbox-item am-last-flexItem">
50 生产厂家:<span>{{ value.ctmmManufacturerName }}</span>
51 </div>
52
53 </div>
54 </div>
55 <div class="am-card-footer">
56 <div class="am-card-footer-content"></div>
57 <div class="am-card-footer-extra">
58 <button type="button" class="mui-btn mui-btn-blue mui-btn-outlined moreDetail" data-id="{{ value.id }}" data-index="{{ i }}" style="margin: 0 5px;">更多详情</button>
59 {{ if acceptance }}
60 <button type="button" class="mui-btn mui-btn-blue mui-btn-danger acceptance" data-id="{{ value.id }}" data-index="{{ i }}">确认验收</button>
61 {{ /if }}
62
63 </div>
64 </div>
65 </div>
66 <div style="background-color: #f5f5f9; height: 6px;">
67 </div>
68 {{/each}}
69 </script>
...\ No newline at end of file ...\ No newline at end of file
1 <!--盘点详情 - 详情页 - yuweI-->
2 <!doctype html>
3 <html>
4 <head>
5 <meta charset="UTF-8">
6 <title></title>
7 <link rel="import" href="./detail_tpl.html" id="acc_detail_tpl"/>
8 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
9 <link href="../../css/mui.min.css" rel="stylesheet" />
10 <link href="../../css/themes.css" rel="stylesheet" />
11 <link href="../../css/index_view.css" rel="stylesheet" />
12 <link href="../../css/check.css" rel="stylesheet"/>
13
14 </head>
15
16 <body>
17
18 <!--<header class="mui-bar mui-bar-nav theme_back">
19 <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
20 <a class="mui-pull-left theme_back_font">返回</a>
21 <h1 class="mui-title">详情</h1>
22 </header>-->
23
24 <div class="mui-content detailRow">
25 <!--<div class="detail-header-flex">
26 <div class="am-action">
27 <a class="mui-icon mui-icon-arrowleft"></a>
28 <a class="theme_back_font">上一个</a>
29 </div>
30 <div>1/12</div>
31 <div class="am-action">
32 <a class="theme_next_font">下一个</a>
33 <a class="mui-icon mui-icon-arrowright"></a>
34 </div>
35 </div>-->
36 <form class="mui-input-group" id="detailContent" style="background:none;">
37 <ul class="mui-table-view" style="margin-bottom:12px;">
38 <li class="mui-table-view-cell mui-collapse">
39 <a class="mui-navigate-right" href="#">产品信息</a>
40 <div class="mui-collapse-content">
41
42 </div>
43 </li>
44 </ul>
45 </form>
46 </div>
47 <script src="../../js/mui.min.js"></script>
48 <script src="../../js/template-web.js" type="text/javascript" charset="utf-8"></script>
49 <script src="../../js/utils.js" type="text/javascript" charset="utf-8"></script>
50 <script src="../../js/common.js" type="text/javascript" charset="utf-8"></script>
51 <script src="../../js/request.js" type="text/javascript" charset="utf-8"></script>
52 <script type="text/javascript">
53
54
55 (function($) {
56
57 $.init()
58
59 // 模板加载
60 $.plusReady (function(){
61 //console.log("当前页面URL:"+plus.webview.currentWebview().getURL());
62 var self = plus.webview.currentWebview();
63 var details = JSON.parse(self.details);//获得参数
64 console.log(details,'details')
65 var data = {}, checkUrl = '/a/checkbill/submitCheck';
66 data.list = [];
67 data.list.push(details);
68 if(details.checkDetailStatus === 1){
69 var node = '<div id="List"></div><div id="addBtn"><button class="mui-btn mui-btn-block btn">+ 增加批号</button></div>';
70 var acceptanceBtn = '<button type="button" id="checkBtn" class="mui-btn mui-btn-warning mui-btn-block" style="margin-bottom: 20px;" data-loading-text = "提交中" data-loading-icon-position="right">确认提交</button>'
71 document.querySelector('#detailContent').insertAdjacentHTML('afterEnd',node);
72 document.querySelector('.detailRow').insertAdjacentHTML("beforeEnd",acceptanceBtn);
73 }
74
75 var utils = new Utils();
76 utils.appendModule('#acc_detail_tpl');
77 var html = template('detail_tpl', data);
78 document.getElementById('detailContent').innerHTML = html;
79
80
81 /*
82 *2 点击添加按钮 增加选填项 开始
83 *
84 * 拖拽后显示操作图标,点击操作图标删除元素
85 */
86 var itemNum = 0;
87
88
89 function addSlideDelete() {
90 mui('.slide-main').off('tap', '.mui-btn').on('tap', '.mui-btn', function(event) {
91 var elem = this;
92 var li = elem.parentNode.parentNode;
93 var btnArray = ['确认', '取消'];
94 mui.confirm('确认删除该条记录?', '操作提醒', btnArray, function(e) {
95 if(e.index == 0) {
96 itemNum--;
97 li.parentNode.removeChild(li);
98 //if(orderList.length==orderListArray.length){
99 var index = li.getAttribute('data-index');
100 //获取该删除的子项的index
101 // orderList.splice(index, 1);
102 // orderListArray.splice(index, 1);
103 } else {
104 setTimeout(function() {
105 mui.swipeoutClose(li);
106 }, 0);
107 }
108 },'div');
109 });
110 }
111 if(details.checkDetailStatus === 1){
112 mui("#addBtn").on('tap', '.mui-btn', function() {
113 var ParentDiv = document.createElement("div")
114 ParentDiv.className = "mui-table-view-cell slide-main";
115 ParentDiv.setAttribute('data-index', itemNum);
116 ParentDiv.innerHTML = '<div class="mui-slider-handle">' +
117 '<div class="mui-input-group">' +
118 '<div class="mui-input-row">' +
119 '<label class="font-warning">生产批号</label>' +
120 '<input type="text" name="buycontent" class="mui-input-clear mui-input mui-input-ph" placeholder="请输入" >' +
121 '</div>' +
122 '<div class="mui-input-row">' +
123 '<label class="font-warning">数量</label>' +
124 '<input type="text" name="buycontent" class="mui-input-clear mui-input mui-input-num" placeholder="请输入" >' +
125 '</div>' +
126 '</div>' +
127 '</div>' +
128 '<div class="mui-slider-right mui-disabled">' +
129 '<a class="mui-btn mui-btn-red">删除</a>' +
130 '</div>';
131 document.getElementById("List").appendChild(ParentDiv);
132 itemNum++;
133 addSlideDelete(); //添加侧滑删除
134 });
135 }
136 var accountStoreNumNode = document.querySelector('#accountStoreNum');
137 var checkNumNode = document.querySelector('#checkNum');// 实际数量
138 var accountNum = document.querySelector('#accountNum');// 账面库存
139 var total = document.querySelector('#total');
140 var referencePrice = document.querySelector('#referencePrice');
141 accountStoreNumNode.onkeyup = function(e){
142 console.log(e.target.value);
143 console.log(accountNum.innerHTML)
144 let amount = e.target.value - (accountNum.innerHTML * 1);
145 checkNumNode.innerHTML = amount;
146 total.innerHTML = (amount * (referencePrice.innerHTML *1)).toFixed(4);
147
148 }
149 mui('.detailRow').on('tap','#checkBtn',function(event){
150
151 var phList = document.querySelector('#List').querySelectorAll('.mui-input-ph'); // 新增批号数据
152 var numList = document.querySelector('#List').querySelectorAll('.mui-input-num'); // 批号对应的数值
153
154 var practicalRepertory = document.querySelector('.practicalRepertory').value;
155 var realProductTime = document.querySelector('.realProductTime').value;
156 var practicalBatch = document.querySelector('.practicalBatch').value;
157 var validEndTime = document.querySelector('.validEndTime').value;
158 var currData = data.list[0];
159 var postData = {}, detailList = [], submitData = {};
160
161 postData.practicalRepertory = practicalRepertory;
162 postData.realProductTime = realProductTime;
163 postData.practicalBatch = practicalBatch;
164 postData.validEndTime = validEndTime;
165 postData.accountBatchNo = currData.accountBatchNo;
166 postData.accountEndTime = currData.accountEndTime;
167 postData.accountProductTime = currData.accountProductTime;
168 postData.accountStoreNum = currData.accountStoreNum;
169 postData.id = currData.id;
170 postData.pId = currData.pId;
171 detailList.push(postData);
172 if(phList.length){
173 for (let i =0 ;i < phList.length; i++) {
174 let values = {};
175 values.accountBatchNo = null;
176 values.accountEndTime = null;
177 values.accountProductTime = null;
178 values.accountStoreNum = 0;
179 values.id = null;
180 values.pId = currData.id;
181 values.practicalBatch = phList[i].value;
182 values.practicalRepertory = numList[i].value;
183
184 detailList.push(values);
185 }
186 }
187 console.log(detailList,'detailList')
188 mui.each(detailList,function(index,item){
189 item.locCode = currData.locCode;
190 item.bigDrugCode = currData.bigDrugCode;
191 item.drugCode = currData.drugCode;
192 item.referencePrice = currData.referencePrice;
193 item.supplierCode = currData.supplierCode;
194 item.unitCode = currData.unitCode;
195 item.supplierCode = currData.supplierCode;
196 item.validEndTime = validEndTime;
197 })
198 submitData.detailList = detailList;
199 submitData.checkBillNo = details.checkBillNo;
200 console.log(submitData);
201 document.activeElement.blur(); // 隐藏软键盘
202 var btnArray = ['否', '是'];
203 mui.confirm('是否确认提交?','警告',btnArray,function(e){
204 if (e.index == 1) {
205 mui.ajaxRequest(checkUrl,{
206 type: 'POST',
207 data: submitData,
208 showWaiting: true,
209 contentType: "application/json",
210 success: function(data){
211 if(data.code === 200){
212 mui.toast('提交成功');
213 var parmasData = {};
214 parmasData.finishUrl = '../check/index';
215 parmasData.keepUrl = 'checkList';
216 parmasData.resultType = 'check';
217 parmasData.itemData = details.orderInfo;
218 common.openwin('../result/index',{ parmas: JSON.stringify(parmasData) },{
219 titleText: '结果',
220 autoBackButton: false
221 })
222 }
223 },
224 error: function(xhr,type,errorThrown){
225 console.log(xhr)
226 }
227 })
228 }
229 },'div')
230
231 })
232
233 });
234
235 })(mui);
236
237
238
239
240 </script>
241 </body>
242
243 </html>
...\ No newline at end of file ...\ No newline at end of file
1 <script type="text/html" id='detail_tpl'>
2 <div style="margin-top:10px;">
3 {{ each list value i }}
4 <ul class="mui-table-view" style="margin-bottom:8px;">
5 <li class="mui-table-view-cell mui-collapse">
6 <a class="mui-navigate-right" href="#">单据信息</a>
7 <div class="mui-collapse-content">
8 <div class="mui-input-row">
9 <label>盘点单号</label>
10 <p class="detailRow_content">{{value.checkbillno ? value.checkbillno: '--'}}</p>
11 </div>
12 <div class="mui-input-row">
13 <label>类型</label>
14 <p class="detailRow_content">{{value.checkbilltypename?value.checkbilltypename:'--'}}</p>
15 </div>
16 <div class="mui-input-row">
17 <label>部门</label>
18 <p class="detailRow_content">{{value.checkbilldeptname?value.checkbilldeptname:'--'}}</p>
19 </div>
20 <div class="mui-input-row">
21 <label>制单人</label>
22 <p class="detailRow_content">{{value.createusername ? value.createusername:'--'}}</p>
23 </div>
24 <div class="mui-input-row">
25 <label>制单时间</label>
26 <p class="detailRow_content">{{value.createdate ? value.createdate:'--'}}</p>
27 </div>
28 <div class="mui-input-row">
29 <label>盘点周期</label>
30 <p class="detailRow_content">{{value.distributionNo}}</p>
31 </div>
32 <div class="mui-input-row">
33 <label>盘点人</label>
34 <p class="detailRow_content">{{value.sheveusername ? value.sheveusername: '--'}}</p>
35 </div>
36 <div class="mui-input-row">
37 <label>提交时间</label>
38 <p class="detailRow_content">{{value.updatedate ? value.updatedate: '--'}}</p>
39 </div>
40 </div>
41 </li>
42 </ul>
43 <ul class="mui-table-view" style="margin-bottom:8px;">
44 <li class="mui-table-view-cell mui-collapse mui-active">
45 <a class="mui-navigate-right" href="#">产品信息</a>
46 <div class="mui-collapse-content">
47 <div class="mui-input-row">
48 <label>货位</label>
49 <p class="detailRow_content">{{ value.locName }}</p>
50 </div>
51 <div class="mui-input-row">
52 <label>货位类型</label>
53 <p class="detailRow_content">{{ value.positionTypeName }}</p>
54 </div>
55 <div class="mui-input-row">
56 <label>通用名</label>
57 <p class="detailRow_content">{{value.ctmmGenericName}}</p>
58 </div>
59 <div class="mui-input-row">
60 <label>规格</label>
61 <p class="detailRow_content">{{value.ctmmSpecification}}</p>
62 </div>
63 <div class="mui-input-row">
64 <label>生产厂家</label>
65 <p class="detailRow_content">{{value.ctmmManufacturerName}}</p>
66 </div>
67 <div class="mui-input-row">
68 <label>包装规格</label>
69 <p class="detailRow_content">{{value.packageSpecification}}</p>
70 </div>
71 <div class="mui-input-row">
72 <label>单位</label>
73 <p class="detailRow_content">{{value.unit}}</p>
74 </div>
75 <div class="mui-input-row">
76 <label>账面库存</label>
77 <p class="detailRow_content" id="accountNum">{{value.accountStoreNum}}</p>
78 </div>
79 <div class="mui-input-row">
80 {{ if value.checkDetailStatus === 1 }}
81 <label class="font-warning">实际数量</label>
82 <input pattern="[0-9]*" id="accountStoreNum" type="number" value="{{ value.accountStoreNum }}" placeholder="请输入" class="practicalRepertory flex-item-input" />
83 {{ else }}
84 <label>实际数量</label>
85 <p class="detailRow_content">{{value.practicalRepertory}}</p>
86 {{ /if }}
87
88 </div>
89 <div class="mui-input-row">
90 <label>盈亏数量</label>
91 <p class="detailRow_content" id="checkNum">{{value.checkNum}}</p>
92 </div>
93 <div class="mui-input-row">
94 <label>账面批号</label>
95 <p class="detailRow_content">{{value.accountBatchNo}}</p>
96 </div>
97 <div class="mui-input-row">
98 {{ if value.checkDetailStatus === 1 }}
99 <label class="font-warning">实际批号</label>
100 <input pattern="[0-9]*" type="number" value="{{ value.accountBatchNo }}" placeholder="请输入" class="practicalBatch flex-item-input" />
101 {{ else }}
102 <label>实际批号</label>
103 <p class="detailRow_content">{{value.practicalBatch}}</p>
104 {{ /if }}
105 </div>
106 <div class="mui-input-row">
107 <label>生产日期</label>
108 <p class="detailRow_content">{{value.accountProductTime}}</p>
109 </div>
110 <div class="mui-input-row">
111 {{ if value.checkDetailStatus === 1 }}
112 <label class="font-warning">实际生产日期</label>
113 <input pattern="[0-9]*" type="date" value="{{ value.accountProductTime }}" placeholder="请输入" class="realProductTime flex-item-input" />
114 {{ else }}
115 <label>实际生产日期</label>
116 <p class="detailRow_content">{{value.realProductTime}}</p>
117 {{ /if }}
118 </div>
119 <div class="mui-input-row">
120 <label>有效期至</label>
121 <p class="detailRow_content">{{value.accountEndTime}}</p>
122 </div>
123 <div class="mui-input-row">
124 {{ if value.checkDetailStatus === 1 }}
125 <label class="font-warning">实际有效期至</label>
126 <input pattern="[0-9]*" type="date" value="{{ value.accountEndTime }}" placeholder="请输入" class="validEndTime flex-item-input"/>
127 {{ else }}
128 <label>实际有效期至</label>
129 <p class="detailRow_content">{{value.validEndTime}}</p>
130 {{ /if }}
131 </div>
132 <div class="mui-input-row">
133 <label>单价</label>
134 <p class="detailRow_content" id="referencePrice">{{ value.referencePrice }}</p>
135 </div>
136 <div class="mui-input-row">
137 <label>盈亏金额</label>
138 <p class="detailRow_content" id="total">{{ (value.referencePrice*value.checkNum).toFixed(4) }}</p>
139 </div>
140 </div>
141 </li>
142 </ul>
143 {{ /each }}
144 </div>
145 </script>
...\ No newline at end of file ...\ No newline at end of file
1
2 <script type="text/html" id='check_list_tpl'>
3 {{ each list value i}}
4 <div class="am-card scrollList-item am-card-full" data-id="{{ value.id }}">
5 <div class="am-card-header">
6 <div class="am-card-header-content">
7 <span style="font-size: 18px; color: rgb(51, 51, 51); font-weight: bold;">
8 {{ value.ctmmGenericName ? value.ctmmGenericName:value.ctmmTradeName ? value.ctmmTradeName: '' }}</span>
9 </div>
10 <div class="am-card-header-extra">
11 <span style="margin-right: 8px;">{{ value.checkNum }}</span>
12 <span>{{ value.checkDetailStatusName }}</span>
13 </div>
14 </div>
15 <div class="am-card-body">
16 <div class="am-flexbox am-flexbox-align-center">
17 <div class="am-flexbox-item">
18 单位:<span>{{ value.unit }}</span>
19 </div>
20 <div class="am-flexbox-item">
21 规格:<span>{{ value.ctmmSpecification }}</span>
22 </div>
23 <div class="am-flexbox-item">
24 货位:<span>{{ value.locName }}</span>
25 </div>
26 </div>
27 {{if value.checkDetailStatus === 1 }}
28 {{if value.editable}}
29 <div class="editForm" style="display: block;">
30 <div class="am-flexbox am-flexbox-align-center">
31 <div class="am-flexbox-item">
32 <div class="am-list-item am-input-item am-list-item-middle">
33 <div class="am-list-line">
34 <div class="am-input-label am-input-label-4 font-warning">数量:</div>
35 <div class="am-input-control">
36 <input pattern="[0-9]*" type="number" value="{{ value.accountStoreNum }}" placeholder="请输入" class="practicalRepertory flex-item-input" />
37 </div>
38 </div>
39 </div>
40 </div>
41 <div class="am-flexbox-item">
42 <div class="am-list-item am-input-item am-list-item-middle">
43 <div class="am-list-line">
44 <div class="am-input-label am-input-label-5 font-warning">生产日期:</div>
45 <div class="am-input-control">
46 <input pattern="[0-9]*" type="date" value="{{ value.accountProductTime }}" placeholder="请输入" class="realProductTime flex-item-input" />
47 </div>
48 </div>
49 </div>
50 </div>
51 <div class="am-flexbox-item">
52 <div class="am-list-item am-input-item am-list-item-middle">
53 <div class="am-list-line">
54 <div class="am-input-label am-input-label-5 font-warning">生产批号:</div>
55 <div class="am-input-control">
56 <input pattern="[0-9]*" type="text" value="{{ value.accountBatchNo }}" placeholder="请输入" class="practicalBatch flex-item-input" />
57 </div>
58 </div>
59 </div>
60 </div>
61 </div>
62 <div class="am-flexbox am-flexbox-align-center">
63 <div class="am-flexbox-item">
64 <div class="am-list-item am-input-item am-list-item-middle">
65 <div class="am-list-line">
66 <div class="am-input-label am-input-label-4 font-warning">有效期至:</div>
67 <div class="am-input-control">
68 <input pattern="[0-9]*" type="date" value="{{ value.accountEndTime }}" placeholder="请输入" class="validEndTime flex-item-input"/>
69 </div>
70 </div>
71 </div>
72 </div>
73 <div class="am-flexbox-item am-last-flexItem">
74 生产厂家:<span>{{ value.ctmmManufacturerName }}</span>
75 </div>
76 <div class="am-flexbox-item">
77
78 </div>
79 </div>
80 </div>
81 <div class="am-flexbox am-flexbox-align-center" style="display: none;">
82 <div class="am-flexbox-item">
83 数量:<span>{{ value.accountStoreNum }}</span>
84 </div>
85 <div class="am-flexbox-item am-last-flexItem">
86 生产厂家:<span>{{ value.ctmmManufacturerName }}</span>
87 </div>
88 <div class="am-flexbox-item">
89
90 </div>
91 </div>
92 {{/if}}
93 {{ else }}
94 <div class="am-flexbox am-flexbox-align-center">
95 <div class="am-flexbox-item">
96 数量:<span>{{ value.accountStoreNum }}</span>
97 </div>
98 <div class="am-flexbox-item am-last-flexItem">
99 生产厂家:<span>{{ value.ctmmManufacturerName }}</span>
100 </div>
101 <div class="am-flexbox-item">
102
103 </div>
104 </div>
105 {{ /if }}
106 </div>
107 <div class="am-card-footer">
108 <div class="am-card-footer-extra">
109 {{if value.checkDetailStatus === 1 }}
110 <button type="button" class="mui-btn mui-btn-blue mui-btn-outlined eidtRow" style="margin: 0 5px;" data-id="{{ value.id }}" data-index="{{ i }}">收起编辑</button>
111 {{/if}}
112 <button type="button" class="mui-btn mui-btn-blue mui-btn-outlined toPage" style="margin: 0 5px;" data-index="{{ i }}">更多详情</button>
113 {{ if value.checkDetailStatus === 1 }}
114 <button type="button" class="mui-btn mui-btn-blue mui-btn-danger submitButton" data-id="{{ value.id }}" data-index="{{ i }}">提交</button>
115 {{ /if }}
116 </div>
117 </div>
118 </div>
119 <div style="background-color: #f5f5f9; height: 6px;">
120 </div>
121 {{/each}}
122 </script>
...\ No newline at end of file ...\ No newline at end of file
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <meta charset="utf-8"/>
5 <meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
6 <meta name="HandheldFriendly" content="true"/>
7 <meta name="MobileOptimized" content="320"/>
8 <title></title>
9 <script type="text/javascript" src="../../js/qrcode.js"></script>
10 <script type="text/javascript">
11 var ws=null,wo=null;
12 var scan=null,domready=false;
13 // H5 plus事件处理
14
15 function plusReady(){
16 if(ws||!window.plus||!domready){
17 return;
18 }
19
20 // 获取当前窗口对象
21 ws=plus.webview.currentWebview();
22 ws.setStyle({
23 zindex:1
24 });
25 wo=ws.opener();
26 // 开始扫描
27 var filter = [plus.barcode.QR,plus.barcode.EAN13,plus.barcode.EAN8,plus.barcode.CODE128];
28 var styles = {frameColor: "#29E52C",scanbarColor: "#29E52C",background: ""}
29 ws.addEventListener('show', function(){
30 scan=new plus.barcode.Barcode('bcid',filter,styles);
31 scan.onmarked=onmarked;
32 scan.onerror = onerror;
33 scan.start({conserve:true,filename:'_doc/barcode/'});
34 }, false);
35 // 显示页面并关闭等待框
36 ws.show('pop-in');
37 // wo.evalJS('closeWaiting()');
38 }
39 if(window.plus){
40 plusReady();
41 }else{
42 document.addEventListener('plusready', plusReady, false);
43 }
44 // 监听DOMContentLoaded事件
45 document.addEventListener('DOMContentLoaded', function(){
46 domready=true;
47 plusReady();
48 }, false);
49 // 扫描失败
50 function onerror(e){
51 mui.alert(e)
52 }
53 // 二维码扫描成功
54 function onmarked(type, result, file){
55
56 switch(type){
57 case plus.barcode.QR:
58 type = 'QR';
59 break;
60 case plus.barcode.EAN13:
61 type = 'EAN13';
62 break;
63 case plus.barcode.EAN8:
64 type = 'EAN8';
65 break;
66 case plus.barcode.CODE128:
67 type = 'CODE128';
68 break;
69 default:
70 type = '其它'+type;
71 break;
72 }
73 result = result.replace(/\n/g, '');
74 scan.close();
75 // 关闭当前页面webView
76 /*var allws = plus.webview.all();
77 var len = allws.length;
78
79 for(var i=0;i<len;i++){
80 console.log('webview'+i+': '+ allws[i].id);
81 }*/
82 // console.log(ws.id)
83 // ws.close();
84
85 /*common.openwin('../acceptance/acc_list',{ result: result }, {
86 titleText: '药品信息'
87 });
88
89 //处理返回事件
90 plus.key.addEventListener('backbutton', function() {
91 plus.webview.currentWebview().close();
92 })*/
93
94 wo.evalJS("scaned('"+ type +"','"+ result +"','"+ file +"');");
95
96 back();
97 }
98 // 从相册中选择二维码图片
99 function scanPicture(){
100 plus.gallery.pick(function(path){
101 var filter = [plus.barcode.QR,plus.barcode.EAN13,plus.barcode.EAN8,plus.barcode.CODE128];
102 plus.barcode.scan(path,onmarked,function(error){
103 plus.nativeUI.alert('无法识别此图片');
104 },filter);
105 }, function(err){
106 console.log('Failed: '+err.message);
107 });
108 }
109
110 </script>
111
112 <style type="text/css">
113 #bcid {
114 width: 100%;
115 position: absolute;
116 top: 0px;
117 bottom: 44px;
118 text-align: center;
119 }
120 .tip {
121 color: #FFFFFF;
122 font-weight: bold;
123 text-shadow: 0px -1px #103E5C;
124 }
125 footer {
126 width: 100%;
127 height: 44px;
128 position: absolute;
129 bottom: 0px;
130 line-height: 44px;
131 text-align: center;
132 color: #FFF;
133 }
134 .fbt {
135 width: 49%;
136 height: 100%;
137 background-color:#f2a11c;
138 float: left;
139 }
140 .scanPicture{
141 margin-left: 5px;
142 }
143 .fbt:active {
144 -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.5);
145 box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.5);
146 }
147 </style>
148 </head>
149 <body style="background-color: #000000;width:100vw;height:100vh;overflow: hidden;">
150 <div id="bcid">
151 <div style="height:40%"></div>
152 <p class="tip">...载入中...</p>
153 </div>
154 <footer>
155 <div class="fbt" onclick="back()">取  消</div>
156 <div class="fbt scanPicture" onclick="scanPicture()">从相册选择二维码</div>
157 </footer>
158 </body>
159 </html>
1 <!--单号搜索页面-->
2 <!doctype html>
3 <html>
4 <head>
5 <meta charset="UTF-8">
6 <title>搜索页面</title>
7 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
8 <link href="../../css/mui.min.css" rel="stylesheet" />
9 <style>
10 #ulList{
11 padding-top: 10px;
12 }
13 .search-ullist{
14 z-index: 2;
15 background-color: #efeff4;
16 border-bottom: solid 1px #F5F5F9;
17 border-radius: 2px;
18 list-style: none;
19 position: relative;
20 margin-top: 0;
21 margin-bottom: 0;
22 padding-left: 0;
23 list-style: none;
24 width: 100%;
25 }
26 .search-ullist-li{
27 position: relative;
28 overflow: hidden;
29 padding: 10px 36px;
30 }
31 .search-ullist-li::before{
32 font-family: Muiicons;
33 content: '\e466';
34 position: absolute;
35 left: 10px;
36 }
37 .history-title{
38 display: flex;
39 justify-content: space-between;
40 padding-right: 10px;
41 }
42 .history-tags{
43 display: flex;
44 flex-wrap: wrap;
45 padding: 0 10px 10px 0;
46 }
47 .tag{
48 padding: 8px 10px;
49 margin: 8px 10px;
50 border: solid 1px #ccc;
51 background-color: #F5F5F9;
52 border-radius: 3px;
53 }
54 </style>
55 </head>
56 <body>
57 <header class="mui-bar mui-bar-nav">
58 <div class="mui-input-row mui-search search_head" style="width:85%;display: inline-block;">
59 <input type="search" id="search" class="mui-input-clear" placeholder="请输入单号">
60 </div>
61 <a class="mui-action-back mui-pull-right" style="height:45px;line-height: 45px;">取消</a>
62 </header>
63 <div class="mui-content">
64 <div id="ulList">
65
66 </div>
67 <div style="padding:10px;">
68 <div class="history-title">
69 <h4>历史搜索记录</h4>
70 </div>
71
72 <div class="history-tags">
73
74 </div>
75
76 </div>
77 </div>
78
79 <script src="../../js/mui.min.js"></script>
80 <script src="../../js/common.js" type="text/javascript" charset="utf-8"></script>
81 <script src="../../js/request.js" type="text/javascript" charset="utf-8"></script>
82 <script type="text/javascript">
83
84 (function($) {
85 mui.init();
86
87 var params = undefined, key = undefined, localStorageItem = [] // 单号
88 $.plusReady(function(){
89 var self = plus.webview.currentWebview();
90 params = JSON.parse(self.params);//获得参数
91 console.log(self.params);
92 key = params.key;
93 var searchList = JSON.parse(plus.storage.getItem('searchCodeHistory'));
94 console.log(searchList);
95 localStorageItem = searchList && searchList.list ? searchList.list: [];
96 if(searchList && searchList.list.length){
97 // 创建 删除历史记录标签
98 var span = document.createElement('span');
99 span.className = 'mui-icon mui-icon-trash clearHistory';
100 document.querySelector('.history-title').appendChild(span);
101
102 // 创建 历史记录tag
103 mui.each(searchList.list,function(index,item){
104 var div = document.createElement('div');
105 div.className = 'tag';
106 div.innerHTML = item;
107 div.setAttribute('data-distributeCode',item);
108 document.querySelector('.history-tags').appendChild(div)
109 })
110 }
111 console.log(localStorageItem)
112 // 删除 历史记录
113 $('.history-title').on('tap','.clearHistory',function(){
114 var btnArray = ['否', '是'];
115 mui.confirm('是否确认删除历史搜索记录?', '确认', btnArray, function(e) {
116 if (e.index == 1) {
117 plus.nativeUI.showWaiting();
118 setTimeout(function(){
119 plus.storage.removeItem('searchCodeHistory');
120 console.log(plus.storage.getItem('searchCodeHistory'))
121 var deleteChild = document.querySelector('.clearHistory');
122 document.querySelector('.history-title').removeChild(deleteChild);
123 document.querySelector('.history-tags').innerHTML = '';
124
125 plus.nativeUI.closeWaiting();
126 },1000)
127 }
128 },'div')
129 });
130
131 // 点击tag 进行搜索
132 $('.history-tags').on('tap','.tag',function(){
133 var dataset = this.dataset;
134 var page = plus.webview.getWebviewById(params.route);
135 var searchData = {
136 distributeCode: dataset.distributecode,
137 auditStatus: params.auditStatus
138 }
139 mui.fire(page,'search',{ searchData: JSON.stringify(searchData) });
140 mui.back()
141 })
142
143 $('.search_head').on('keyup','#search',function(e){
144 var paramName = e.target.value;
145 var url = null, data = {};
146 if(paramName){
147 if(key === 'distributeCode'){
148 // 单号
149 url = '/a/checkaccept/shelfListNoPage';
150 data = {
151 distributeCode: paramName,
152 auditStatus: params.auditStatus
153 }
154 }
155 mui.ajaxRequest(url,{
156 type:"post",
157 data: data,
158 success: function(data){
159 if(data.code === 200){
160 let dataList = data.data;
161 createSelect(dataList,key);
162 }
163 },
164 error: function(xhr,type,errorThrown){
165 alert(xhr.responseText)
166 }
167 })
168 }else{
169 document.querySelector('#ulList').innerHTML = '';
170 }
171 });
172
173
174 function createSelect(data,key){
175 if(document.querySelector('.search-ullist')){
176 var ulList = document.querySelector('.search-ullist');
177 document.querySelector('#ulList').removeChild(ulList);
178 }
179 var ul = document.createElement('ul');
180 ul.className = 'search-ullist';
181 for(var i=0;i<data.length; i++){
182 var li = document.createElement('li');
183 li.className = 'search-ullist-li';
184 li.setAttribute('data-distributeCode',data[i].distributeCode);
185 li.innerHTML = data[i].distributeCode;
186 ul.appendChild(li);
187 }
188 document.querySelector('#ulList').appendChild(ul)
189 }
190 $('#ulList').on('tap','.search-ullist-li',function(){
191 console.log(localStorageItem)
192 let dataset = this.dataset;
193 console.log(dataset)
194 let flag = false;
195 mui.each(localStorageItem,function(index,item){
196 if(item === dataset.distributecode){
197 flag = true
198 }
199 });
200 if(!flag){
201 if(localStorageItem.length > 10){
202 localStorageItem.shift();
203 }
204 localStorageItem.push(dataset.distributecode);
205 console.log('当前不存在')
206 }else{
207 console.log('已经存在')
208 }
209 let localParams = {
210 list: localStorageItem
211 }
212 let searchData = {
213 distributeCode: dataset.distributecode,
214 auditStatus: params.auditStatus
215 }
216 plus.storage.setItem('searchCodeHistory',JSON.stringify(localParams))
217 var page = plus.webview.getWebviewById(params.route);
218 mui.fire(page,'search',{ searchData: JSON.stringify(searchData)});
219 mui.back()
220 });
221 })
222 })(mui);
223
224 </script>
225 </body>
226
227 </html>
...\ No newline at end of file ...\ No newline at end of file
1
2 <script type="text/html" id='ground_batch_list'>
3 {{ each list value i}}
4 <div class="batch-wrapper">
5 <div class="checkoneParent">
6 <div class="mui-checkbox mui-left" style="width: 48px;height:48px;padding:50px 0 ;display: block;">
7 <input name="selected" class="checkone" type="checkbox" data-index="{{ (page-1)*pageSize + i }}" style="top: 35px;left: 10px;">
8 </div>
9 </div>
10 <div class="am-card scrollList-item am-card-full" style="width: 90%;border: none;"
11 data-id="{{ value.id }}" data-upParentId="{{ value.upParentId?value.upParentId:'' }}" >
12 <div class="am-card-header">
13 <div class="am-card-header-content">
14 <span style="font-size: 18px; color: rgb(51, 51, 51); font-weight: bold;">
15 {{ value.ctmmGenericName ? value.ctmmGenericName:value.ctmmTradeName ? value.ctmmTradeName: '' }}</span>
16 </div>
17 <div class="am-card-header-extra">
18 <span>{{ value.type }}</span>
19 </div>
20 </div>
21 <div class="am-card-body">
22 <div class="am-flexbox am-flexbox-align-center">
23 <div class="am-flexbox-item">
24 单位:<span>{{ value.replanUnit }}</span>
25 </div>
26 <div class="am-flexbox-item">
27 数量:<span class="groundNum">{{ value.realReceiveQuantiry }}</span>
28 </div>
29 <div class="am-flexbox-item">
30 规格:<span>{{ value.ctmmSpecification }}</span>
31 </div>
32 </div>
33 {{ if hasGround }}
34 {{ if value.realNum && value.realNum.length && value.realNum.length > 1}}
35 {{ each value.realNum num index}}
36 <div class="editForm" style="display: block;" data-upParentId="{{ value.upParentId[index]?value.upParentId[index]:0 }}"
37 data-productBatchNo = "{{value.productBatchNo}}" data-id="{{value.id}}">
38 <div class="am-flexbox am-flexbox-align-center">
39 <div class="am-flexbox-item">
40 <div class="am-list-item am-input-item am-list-item-middle">
41 <div class="am-list-line">
42 {{ if value.upParentId[index] != null }}
43 <div class="am-input-label am-input-label-4 font-warning" style="width: 56px;">备选货位:</div>
44 {{ else }}
45 <div class="am-input-label am-input-label-4 font-warning" style="width: 56px;">指示货位:</div>
46 {{ /if }}
47 <div class="am-input-control">
48 <select class="editInput select_actualStore" value="{{ value.replanStore }}">
49 {{ each value.acceptoodsVo item i }}
50 {{ if value.realReceiveStore[index] === item.id }}
51 <option value="{{ item.id }}" selected="selected">{{ item.positionName }}</option>
52 {{ else }}
53 <option value="{{ item.id }}">{{ item.positionName }}</option>
54 {{ /if }}
55 {{ /each }}
56 </select>
57 </div>
58 </div>
59 </div>
60 </div>
61 <div class="am-flexbox-item">
62 <div class="am-list-item am-input-item am-list-item-middle">
63 <div class="am-list-line">
64 <div class="am-input-label am-input-label-6 font-warning">实际上架数量:</div>
65 <div class="am-input-control">
66 <input type="tel" value="{{ value.realNum[index] ? value.realNum[index] : 0}}" placeholder="请输入" data-id="{{value.id}}" data-oldValue = "{{value.realNum[index] ? value.realNum[index] : 0}}" data-realReceiveQuantiry = "{{ value.realReceiveQuantiry }}" class="realNum flex-item-input" />
67 </div>
68 </div>
69 </div>
70 </div>
71 </div>
72 </div>
73 {{/each}}
74 {{ else }}
75 <div class="editForm" style="display: block;" data-upParentId="{{ value.upParentId?value.upParentId:0 }}"
76 data-productBatchNo = "{{value.productBatchNo}}" data-id="{{value.id}}">
77 <div class="am-flexbox am-flexbox-align-center">
78 <div class="am-flexbox-item">
79 <div class="am-list-item am-input-item am-list-item-middle">
80 <div class="am-list-line">
81 {{ if value.upParentId != null }}
82 <div class="am-input-label am-input-label-4 font-warning" style="width: 56px;">备选货位:</div>
83 {{ else }}
84 <div class="am-input-label am-input-label-4 font-warning" style="width: 56px;">指示货位:</div>
85 {{ /if }}
86 <div class="am-input-control">
87 <select class="editInput select_actualStore" value="{{ value.replanStore }}">
88 {{ each value.acceptoodsVo item i }}
89 {{ if value.realReceiveStore === item.id }}
90 <option value="{{ item.id }}" selected="selected">{{ item.positionName }}</option>
91 {{ else }}
92 <option value="{{ item.id }}">{{ item.positionName }}</option>
93 {{ /if }}
94 {{ /each }}
95 </select>
96 </div>
97 </div>
98 </div>
99 </div>
100 <div class="am-flexbox-item">
101 <div class="am-list-item am-input-item am-list-item-middle">
102 <div class="am-list-line">
103 <div class="am-input-label am-input-label-6 font-warning">实际上架数量:</div>
104 <div class="am-input-control">
105 <input type="tel" value="{{ value.realNum ? value.realNum : 0}}" placeholder="请输入" data-id="{{value.id}}" data-oldValue = "{{value.realNum ? value.realNum : 0}}" data-realReceiveQuantiry = "{{ value.realReceiveQuantiry }}" class="realNum flex-item-input" />
106 </div>
107 </div>
108 </div>
109 </div>
110 </div>
111 </div>
112 {{ /if }}
113 {{ /if }}
114 <div class="am-flexbox am-flexbox-align-center">
115 <div class="am-flexbox-item">
116 生产厂家:<span>{{ value.ctmmManufacturerName }}</span>
117 </div>
118 <div id='productBatchNo'>
119 <span style="display: none;">{{ value.productBatchNo }}</span>
120 </div>
121 </div>
122 </div>
123 </div>
124 </div>
125 {{/each}}
126 </script>
...\ No newline at end of file ...\ No newline at end of file
1 <script type="text/html" id='detail_tpl'>
2 <div style="margin-top:10px;">
3 {{ each list value i }}
4 {{ if value.upParentId == null }}
5 <ul class="mui-table-view" style="margin-bottom:8px;">
6 <li class="mui-table-view-cell mui-collapse mui-active">
7 <a class="mui-navigate-right" href="#">单据信息</a>
8 <div class="mui-collapse-content">
9 <div class="mui-input-row">
10 <label>配送单/验收单号</label>
11 <p class="detailRow_content">{{ distributeCode ? distributeCode: '' }}</p>
12 </div>
13 <div class="mui-input-row">
14 <label>状态</label>
15 <p class="detailRow_content">{{ value.upFinishType && value.upFinishType===1 ? '已上架': ' 待上架' }}</p>
16 </div>
17 <div class="mui-input-row">
18 <label>验收时间</label>
19 <p class="detailRow_content">{{ receptionTime ? receptionTime: ''}}</p>
20 </div>
21 <!--<div class="mui-input-row">
22 <label>上架人</label>
23 <p class="detailRow_content">{{ createname ? createname: '' }}</p>
24 </div>-->
25 <div class="mui-input-row">
26 <label>上架时间</label>
27 <p class="detailRow_content">{{ upUserDate ? upUserDate: ''}}</p>
28 </div>
29 </div>
30 </li>
31 </ul>
32 {{/if}}
33
34 <ul class="mui-table-view" style="margin-bottom:8px;">
35 <li class="mui-table-view-cell mui-collapse mui-active goodsInfo">
36 {{ if value.upParentId != null }}
37 <a class="mui-navigate-right" href="#">产品信息<span style="color: #f5222d;">(备选上架货位)</span></a>
38 {{ else }}
39 <a class="mui-navigate-right" href="#">产品信息</a>
40 {{ /if }}
41 <div class="mui-collapse-content">
42 <div class="mui-input-row">
43 <label>通用名称</label>
44 <p class="detailRow_content">{{ value.ctmmGenericName }}</p>
45 </div>
46 <div class="mui-input-row">
47 <label>规格</label>
48 <p class="detailRow_content">{{value.ctmmSpecification}}</p>
49 </div>
50 <div class="mui-input-row">
51 <label>生产厂家</label>
52 <p class="detailRow_content">{{value.ctmmManufacturerName}}</p>
53 </div>
54 <div class="mui-input-row">
55 <label>生产批号</label>
56 <p class="detailRow_content">{{value.productBatchNo}}</p>
57 </div>
58 <div class="mui-input-row">
59 <label>生产日期</label>
60 <p class="detailRow_content">{{value.realProductTime}}</p>
61 </div>
62 <div class="mui-input-row">
63 <label>有效期至</label>
64 <p class="detailRow_content">{{value.realValidEndDate}}</p>
65 </div>
66 <div class="mui-input-row">
67 <label>包装规格</label>
68 <p class="detailRow_content">{{value.packageSpecification}}</p>
69 </div>
70 <div class="mui-input-row">
71 <label>单位</label>
72 <p class="detailRow_content">{{value.unit}}</p>
73 </div>
74 <div class="mui-input-row">
75 <label>指示货位</label>
76 <p class="detailRow_content">{{value.actualStore}}</p>
77 </div>
78 <div class="mui-input-row">
79 {{ if value.upFinishType !== 1 }}
80 {{ if value.upParentId != null }}
81 <label class="font-warning">备选上架实际货位</label>
82 {{ else }}
83 <label class="font-warning">实际货位</label>
84 {{ /if }}
85 <select class="editInput realReceiveStore" style="float: left;width: 40%;">
86 {{ each value.acceptoodsVo item i }}
87 {{ if value.realReceiveStore === item.id }}
88 <option value="{{ item.id }}" selected="selected">{{ item.positionName }}</option>
89 {{ else }}
90 <option value="{{ item.id }}">{{ item.positionName }}</option>
91 {{ /if }}
92 {{ /each }}
93 </select>
94 <a href="#modal" class="mui-pull-right qrcode" id="qrcode" onclick="clicked()" style="height: 45px;padding: 8px 25px;">
95 <img src="../../assest/qrcode.png" width="32" height="32"/>
96 </a>
97 {{ else }}
98 {{ if value.upParentId != null }}
99 <label>备选上架实际货位</label>
100 {{ else }}
101 <label>实际货位</label>
102 {{ /if }}
103 <p class="detailRow_content">{{value.realReceiveStoreName}}</p>
104 {{ /if }}
105
106 </div>
107
108 <div class="mui-input-row">
109 <label>批准文号</label>
110 <p class="detailRow_content">{{value.approvalNo}}</p>
111 </div>
112 <div class="mui-input-row">
113 <label>数量</label>
114 <p class="detailRow_content">{{value.realReceiveQuantiry}}</p>
115 </div>
116 <div class="mui-input-row">
117 <!-- <label>实际上架数量</label>
118 <p class="detailRow_content">{{value.realNum}}</p> -->
119 {{ if value.upFinishType !== 1 }}
120 {{ if value.upParentId != null }}
121 <label class="font-warning">备选货位实际上架数量</label>
122 {{ else }}
123 <label class="font-warning">实际上架数量</label>
124 {{ /if }}
125 <input type="tel" class="mui-input editInput realNum" value="{{ value.realNum ? value.realNum : 0}}" placeholder="请输入" data-id="{{value.id}}" data-oldValue = "{{value.realNum}}" data-realReceiveQuantiry = "{{ value.realReceiveQuantiry }}" />
126 {{ else }}
127 {{ if value.upParentId != null }}
128 <label>备选货位实际上架数量</label>
129 {{ else }}
130 <label>实际上架数量</label>
131 {{ /if }}
132 <p class="detailRow_content">{{value.realNum}}</p>
133 {{ /if }}
134 </div>
135 </div>
136 </li>
137 </ul>
138 {{ /each }}
139 </div>
140 </script>
...\ No newline at end of file ...\ No newline at end of file
1 <!--上架 - 详情页 - wwb-->
2 <!doctype html>
3 <html>
4 <head>
5 <meta charset="UTF-8">
6 <title></title>
7 <link rel="import" href="./detail_tpl.html" id="ground_detail_tpl"/>
8 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
9 <link href="../../css/mui.min.css" rel="stylesheet" />
10 <link href="../../css/themes.css" rel="stylesheet" />
11 <link href="../../css/check.css" rel="stylesheet"/>
12 <link href="../../css/index_view.css" rel="stylesheet" />
13
14 </head>
15
16 <body>
17 <div class="mui-content detailRow">
18 <form class="mui-input-group" id="detailContent" style="background:none;">
19 <ul class="mui-table-view" style="margin-bottom:12px;">
20 <li class="mui-table-view-cell mui-collapse">
21 <a class="mui-navigate-right" href="#">产品信息</a>
22 <div class="mui-collapse-content">
23
24 </div>
25 </li>
26 </ul>
27 </form>
28
29 </div>
30
31 <script src="../../js/mui.min.js"></script>
32 <script src="../../js/jquery.min.js"></script>
33 <script src="../../js/template-web.js" type="text/javascript" charset="utf-8"></script>
34 <script src="../../js/utils.js" type="text/javascript" charset="utf-8"></script>
35 <script src="../../js/common.js" type="text/javascript" charset="utf-8"></script>
36 <script src="../../js/request.js" type="text/javascript" charset="utf-8"></script>
37 <script type="text/javascript">
38 function clicked(){
39 common.openwin('../commonPages/qrcode',true,{ titleText: '扫码上架' })
40 }
41 var acceptoodsVo = [];//定义实际货位的列表集合
42 /*获取二维码返回值*/
43 function scaned(t, r, f) {
44 console.log(r);//返回二维码读取的数据
45 var list = acceptoodsVo;
46 if(r && Array.isArray(list) && list.length >0){
47 var locationCode = list.filter(function(item){
48 return item.positionName == r;
49 })[0];
50 if(locationCode){
51 mui.alert('扫描成功!','提示','确定',function (e) {
52 //jQuery(".realReceiveStore").val(locationCode.id);
53 document.getElementsByClassName('realReceiveStore')[0].value = locationCode.id;
54 },'div')
55 }else{
56 mui.alert('扫描的货位码不在实际货位码可选集合中,请重新扫描!','提示','确定',function (e) {},'div')
57 }
58 }
59 }
60
61 (function($,$$) {
62 var utils = new Utils();
63 utils.appendModule('#ground_detail_tpl');
64
65 function showData(data){
66 var html = template('detail_tpl', data);
67 document.getElementById('detailContent').innerHTML = html;
68 }
69
70 /* 过滤还有备选货位的数据 */
71 function filterDatas(datas,upFinishType){
72
73 var list = datas.list;
74 if(upFinishType != "1" && list.length && list.length > 0){//未上架
75 for(var i = 0,len = list.length;i<len;i++){
76 if(!list[i].upParentId){//指示货位
77 list[i].realNum = list[i].realReceiveQuantiry;
78 }
79 }
80 }
81 return datas;
82 }
83
84 $.plusReady(function(){
85 $.init({
86 beforeback: function() {
87 var list = plus.webview.currentWebview().opener();
88 mui.fire(list, 'pagefresh',{ selectTabs: details.selectTabs === 1 ? 0: 1, query: details.query });
89 return true;
90 }
91 })
92
93 var self = plus.webview.currentWebview();
94 var details = JSON.parse(self.details);//获得参数
95
96 var upParentId = details.upParentId;
97 console.log(JSON.stringify(details.selectTabs) );
98 var postData = {
99 distributeCode: details.distributeCode,
100 upFinishType: details.upFinishType,
101 id: details.id
102 };
103 var detailData = {};
104 var url = '/a/shelfInfo/shelfInfoList',
105 titleUrl = '/a/shelfInfo/shelfInfoTitle',
106 groundUrl = '/a/checkacceptdetail/finish';
107 plus.nativeUI.showWaiting('加载中...');
108 mui.ajaxRequest(titleUrl,{
109 type: 'POST',
110 data: { distributeCode: postData.distributeCode },
111 success: function(data){
112 console.log(JSON.stringify(data))
113 if(data.code === 200){
114 for(var key in data.data){
115 detailData[key] = data.data[key];
116 }
117 mui.ajaxRequest(url,{
118 type: 'POST',
119 data: postData,
120 success: function(data){
121 console.log(JSON.stringify(data))
122 plus.nativeUI.closeWaiting();
123 if(data.code === 200){
124
125 detailData.list = data.data.list;
126 if(data.data.list && data.data.list[0] && data.data.list[0].acceptoodsVo){
127 acceptoodsVo = data.data.list[0].acceptoodsVo;
128 }
129
130 console.log('detailData********************************')
131
132 var _detailData = filterDatas(detailData,details.upFinishType);
133 showData(_detailData);
134 if(details.upFinishType === '0'){
135 var groundBtn = '<button type="button" id="ground" class="mui-btn mui-btn-warning mui-btn-block" style="margin-bottom: 20px;" data-loading-text = "提交中" data-loading-icon-position="right">确认上架</button>'
136 document.querySelector('.detailRow').insertAdjacentHTML("beforeEnd",groundBtn);
137 }
138 }else{
139 mui.toast(data.msg,{ type: 'div' });
140 }
141 },
142 error: function(xhr,type,errorThrown){
143 console.log(xhr.responseText)
144 }
145 });
146 }else{
147 mui.toast(data.msg,{ type: 'div' });
148 }
149
150 },
151 error: function(xhr,type,errorThrown){
152 console.log(xhr.responseText)
153 }
154 })
155
156 // 上架
157 console.log(details.upFinishType)
158 if(details.upFinishType === '0'){
159 var ground = (document.querySelector('#ground'));
160 $('.detailRow').on('tap','#ground',function(e){
161 document.activeElement.blur(); // 隐藏软键盘
162 var edit = document.querySelectorAll('.goodsInfo');
163 var id = detailData.list[0].id;
164
165
166 if(edit[0] && edit.length > 0){
167 var detailListVo = [],submitData = {};
168 mui.each(edit,function(index,item){
169 var postData = {};
170 var $$input = $$(item).find('input.realNum'),realNum = 0;
171 if($$input[0]){
172 realNum = $$input.val()-0;
173 }
174 var realReceiveStore =item.querySelector('.realReceiveStore').value;
175
176 postData.id = id;
177 postData.realNum = realNum;
178 postData.productBatchNo = detailData.list[0].productBatchNo;
179 postData.realReceiveStore = realReceiveStore;
180 postData.upParentId = detailData.list[index].upParentId?detailData.list[index].upParentId:"";
181 detailListVo.push(postData);
182 });
183 submitData.detailListVo = detailListVo;
184 submitData.distributeCode = details.distributeCode;
185 console.log(submitData)
186 }
187 var btnArray = ['否', '是'];
188 mui.confirm('是否确认上架?', '操作提示', btnArray, function(e) {
189 if (e.index == 1) {
190 mui.ajaxRequest(groundUrl,{
191 type: 'POST',
192 data: submitData,
193 contentType: "application/json",
194 showWaiting: true,
195 success: function(data){
196 if(data.code === 200){
197 //mui.toast('上架成功',{ type: 'div' });
198 mui.alert(data.data);
199 var page = plus.webview.getWebviewById('ground_not_list');
200 mui.fire(page,'pagefresh',{ selectTab: '1' });
201 common.gotowin('acc_not_list',{ });
202 plus.webview.currentWebview().close();
203 }else{
204 mui.alert(data.msg)
205 }
206 },
207 error: function(xhr,type,errorThrown){
208 console.log(xhr.responseText)
209 }
210 });
211 }
212 },'div')
213 });
214 }
215
216 //绑定输入实际上架数验证
217 $$('#detailContent').on('keyup','.realNum',function(){
218
219 var _this = this,$$this = $$(this);
220 var id = _this.dataset.id,realReceiveQuantiry = _this.dataset.realreceivequantiry-0,oldValue = _this.dataset.oldvalue-0;
221 _this.value = _this.value.replace(/\D/g,'')-0;
222 var count = 0;
223 var eles = mui(".mui-input-row input[data-id='"+id+"']"),len = eles.length;
224 eles.each(function (e) {
225 count += this.value-0;
226 });
227 if(count > realReceiveQuantiry){
228 if(len == 2){
229 var text1 = "该药品存在“补货指示货位”和“备选上架货位”,两货位实际上架数量相加不能大于指示数量"+realReceiveQuantiry+"!";
230 mui.alert(text1,'提示','确定',function (e) {
231 _this.value = oldValue;
232 },'div')
233 }else{
234 var text1 = "实际上架数量不能大于指示数量"+realReceiveQuantiry+"!";
235 mui.alert(text1,'提示','确定',function (e) {
236 _this.value = oldValue;
237 },'div')
238 }
239 }
240 });
241
242
243 })
244 })(mui,jQuery);
245
246 </script>
247 </body>
248
249 </html>
...\ No newline at end of file ...\ No newline at end of file
1
2 <script type="text/html" id='ground_list'>
3 {{ each list value i}}
4 <div class="am-card scrollList-item am-card-full"
5 data-id="{{ value.id }}"
6 data-realnum="{{ value.realNum }}"
7 data-productBatchNo="{{ value.productBatchNo }}"
8 data-upParentId="{{ value.upParentId?value.upParentId:"" }}"
9 >
10 <div class="am-card-header">
11 <div class="am-card-header-content">
12 <span style="font-size: 18px; color: rgb(51, 51, 51); font-weight: bold;">
13 {{ value.ctmmGenericName ? value.ctmmGenericName:value.ctmmTradeName ? value.ctmmTradeName: '' }}</span>
14 </div>
15 <div class="am-card-header-extra">
16 <span>{{ value.type }}</span>
17 </div>
18 </div>
19 <div class="am-card-body">
20 <div class="am-flexbox am-flexbox-align-center">
21 <div class="am-flexbox-item">
22 单位:<span>{{ value.replanUnit }}</span>
23 </div>
24 <div class="am-flexbox-item">
25 数量:<span class="groundNum">{{ value.realReceiveQuantiry }}</span>
26 </div>
27 <div class="am-flexbox-item">
28 规格:<span>{{ value.ctmmSpecification }}</span>
29 </div>
30 </div>
31 {{ if hasGround }}
32 {{ if value.realNum && value.realNum.length && value.realNum.length > 1}}
33 {{ each value.realNum num index}}
34 <div class="editForm" style="display: block;" data-upParentId="{{ value.upParentId[index]?value.upParentId[index]:0 }}">
35 <div class="am-flexbox am-flexbox-align-center">
36 <div class="am-flexbox-item">
37 <div class="am-list-item am-input-item am-list-item-middle">
38 <div class="am-list-line">
39 <div class="am-input-label am-input-label-4 font-warning" style="width: 56px;">{{value.storeType[index]}}:</div>
40 <div class="am-input-control">
41 <select class="editInput select_actualStore" data-id="{{value.id}}" data-index="{{index}}">
42 {{ each value.acceptoodsVo item i }}
43 {{ if value.realReceiveStore[index] && value.realReceiveStore[index] === item.id }}
44 <option value="{{ item.id }}" selected="selected">{{ item.positionName }}</option>
45 {{ else }}
46 <option value="{{ item.id }}">{{ item.positionName }}</option>
47 {{ /if }}
48 {{ /each }}
49 </select>
50 </div>
51 </div>
52 </div>
53 </div>
54 <div class="am-flexbox-item">
55 扫描货位:
56 <a href="#modal" class="qrcode" id="qrcode" data-value="{{value}}" data-index="{{index}}" style="height: 32px;width: 32px;display: inline-block;">
57 <img src="../../assest/qrcode.png" style="width:100%;height: 100%;margin-bottom: -14px;" width="30" height="30"/>
58 </a>
59 </div>
60 <div class="am-flexbox-item">
61 <div class="am-list-item am-input-item am-list-item-middle">
62 <div class="am-list-line">
63 <div class="am-input-label am-input-label-6 font-warning">实际上架数量:</div>
64 <div class="am-input-control">
65 <input class="realNum flex-item-input" type="tel" value="{{ value.realNum[index] ? value.realNum[index] : 0}}" placeholder="请输入" data-id="{{value.id}}" data-oldValue = "{{value.realNum[index] ? value.realNum[index] : 0}}" data-realReceiveQuantiry = "{{ value.realReceiveQuantiry }}" />
66 </div>
67 </div>
68 </div>
69 </div>
70 </div>
71 </div>
72 {{/each}}
73 {{ else }}
74 <div class="editForm" style="display: block;" data-upParentId="{{ value.upParentId?value.upParentId:0 }}">
75 <div class="am-flexbox am-flexbox-align-center">
76 <div class="am-flexbox-item">
77 <div class="am-list-item am-input-item am-list-item-middle">
78 <div class="am-list-line">
79 <div class="am-input-label am-input-label-4 font-warning" style="width: 40px;">货位:</div>
80 <div class="am-input-control">
81 <select class="editInput select_actualStore" data-id="{{value.id}}" data-index="{{1}}">
82 {{ each value.acceptoodsVo item i }}
83 {{ if value.realReceiveStore === item.id }}
84 <option value="{{ item.id }}" selected="selected">{{ item.positionName }}</option>
85 {{ else }}
86 <option value="{{ item.id }}">{{ item.positionName }}</option>
87 {{ /if }}
88 {{ /each }}
89 </select>
90 </div>
91 </div>
92 </div>
93 </div>
94 <div class="am-flexbox-item">
95 扫描货位:
96 <a href="#modal" class="qrcode" id="qrcode" data-value="{{value}}" data-index="{{1}}" style="height: 32px;width: 32px;display: inline-block;">
97 <img src="../../assest/qrcode.png" style="width:100%;height: 100%;margin-bottom: -14px;" width="30" height="30"/>
98 </a>
99 </div>
100 <div class="am-flexbox-item">
101 <div class="am-list-item am-input-item am-list-item-middle">
102 <div class="am-list-line">
103 <div class="am-input-label am-input-label-6 font-warning">实际上架数量:</div>
104 <div class="am-input-control">
105 <input class="realNum flex-item-input" type="tel" value="{{ value.realNum ? value.realNum : 0}}" placeholder="请输入" data-id="{{value.id}}" data-oldValue = "{{value.realNum}}" data-realReceiveQuantiry = "{{ value.realReceiveQuantiry }}" />
106 </div>
107 </div>
108 </div>
109 </div>
110 </div>
111 </div>
112 {{ /if }}
113 {{ /if }}
114 <div class="am-flexbox am-flexbox-align-center">
115 <div class="am-flexbox-item">
116 生产厂家:<span>{{ value.ctmmManufacturerName }}</span>
117 </div>
118 </div>
119 </div>
120 <div class="am-card-footer">
121 <div class="am-card-footer-content"></div>
122 <div class="am-card-footer-extra">
123 <button type="button" class="mui-btn mui-btn-blue mui-btn-outlined moreDetail" data-id="{{ value.id }}" data-index="{{ i }}" data-upParentId="{{value.upParentId?value.upParentId:0}}" style="margin: 0 5px;">更多详情</button>
124 {{ if hasGround }}
125 <button type="button" class="mui-btn mui-btn-danger ground" data-id="{{ value.id }}" data-index="{{ i }}" >确认上架</button>
126 {{ /if }}
127 </div>
128 </div>
129 </div>
130 <div style="background-color: #f5f5f9; height: 6px;">
131 </div>
132 {{/each}}
133 </script>
...\ No newline at end of file ...\ No newline at end of file
1 <!DOCTYPE html>
2 <html>
3
4 <head>
5 <meta charset="utf-8">
6 <title>Hello MUI</title>
7 <meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1,user-scalable=no">
8 <meta name="apple-mobile-web-app-capable" content="yes">
9 <meta name="apple-mobile-web-app-status-bar-style" content="black">
10
11 <link rel="stylesheet" href="../css/mui.min.css">
12 <style>
13 #close {
14 position: absolute;
15 width: 160px;
16 left: 50%;
17 margin-left: -80px;
18 /* bottom: 190px; */
19 bottom: 120px;
20 padding: 10px;
21 color: #fff;
22 border-color: #F2A11C;
23 background-color: #F2A11C;
24 }
25 .animate {
26 position: absolute;
27 left: 0;
28 bottom: 0;
29 width: 100%;
30 color: #fff;
31 display: -moz-box;
32 }
33 .animated {
34 position: absolute;
35 width: 100%;
36 height: 50px;
37 -webkit-animation-duration: 4s;
38 -webkit-animation-play-state: paused;
39 -webkit-animation-fill-mode: both;
40 }
41 .bounceInDown {
42 -webkit-animation-name: bounceInDown;
43 -webkit-animation-play-state: running;
44 -webkit-animation-delay: 1s;
45 display: block;
46 }
47
48 @-webkit-keyframes bounceInDown {
49 0%, 60%, 75%, 90%, 100% {
50 -webkit-animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
51 animation-timing-function: cubic-bezier(0.215, 0.610, 0.355, 1.000);
52 }
53 0% {
54 opacity: 0;
55 -webkit-transform: translate3d(0, 2000px, 0);
56 transform: translate3d(0, 2000px, 0);
57 }
58 60% {
59 opacity: .8;
60 -webkit-transform: translate3d(0, 770px, 0);
61 transform: translate3d(0, 770px, 0);
62 }
63 100% {
64 opacity: 1;
65 -webkit-transform: translate3d(0, 750px, 0);
66 transform: translate3d(0, 750px, 0);
67 }
68 }
69
70 </style>
71 </head>
72
73 <body>
74 <div id="slider" class="mui-slider mui-fullscreen" style="background-color: #fff;">
75 <div class="mui-slider-group">
76 <!-- 第一张 -->
77 <div class="mui-slider-item">
78 <div class="animate guide-show">
79 <img src="../assest/guide-pic1.png"/>
80 </div>
81 </div>
82 <!-- 第二张 -->
83 <div class="mui-slider-item">
84 <div id="tips-2" class="animate mui-hidden">
85 <img src="../assest/guide-pic2.png"/>
86 </div>
87 </div>
88 <!-- 第三张 -->
89 <div class="mui-slider-item">
90 <div id="tips-3" class="animate mui-hidden">
91 <img src="../assest/guide-pic3.png"/>
92 </div>
93 <div class="animated bounceInDown">
94 <button id='close' class="mui-btn mui-btn-warning mui-btn-outlined">立即体验</button>
95 </div>
96 </div>
97 </div>
98
99 <div class="mui-slider-indicator">
100 <div class="mui-indicator mui-active"></div>
101 <div class="mui-indicator"></div>
102 <div class="mui-indicator"></div>
103 </div>
104 </div>
105 <script src="../js/mui.min.js"></script>
106 <script>
107 mui.back = function() {};
108 mui.plusReady(function() {
109 if(mui.os.ios){
110 plus.navigator.setFullscreen(true);
111 }
112 plus.navigator.closeSplashscreen();
113 });
114 //立即体验按钮点击事件
115 document.getElementById("close").addEventListener('tap', function(event) {
116
117 plus.storage.setItem("launchFlag", "true");
118 plus.navigator.setFullscreen(false);
119 // plus.webview.currentWebview().close();
120 mui.openWindow({
121 url:'login/index.html',
122 id:'login/index.html',
123 });
124 }, false);
125 //图片切换时,触发动画
126 document.querySelector('.mui-slider').addEventListener('slide', function(event) {
127 //注意slideNumber是从0开始的;
128 var index = event.detail.slideNumber+1;
129 if(index==2||index==3){
130 var item = document.getElementById("tips-"+index);
131 if(item.classList.contains("mui-hidden")){
132 item.classList.remove("mui-hidden");
133 item.classList.add("guide-show");
134 }
135 }
136 });
137
138 </script>
139 </body>
140
141 </html>
...\ No newline at end of file ...\ No newline at end of file
1 <!doctype html>
2 <html>
3
4 <head>
5 <meta charset="utf-8">
6 <title></title>
7 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
8 <link href="../../css/mui.css" rel="stylesheet" />
9 <style>
10 .theme_font_warning{
11 color: #f2a11c;
12 }
13 </style>
14 </head>
15
16 <body>
17 <div class="mui-content">
18 <ul class="mui-table-view">
19 <li class="mui-table-view-cell">
20 账号信息
21 <span class="mui-pull-right version" style="font-size: 14px;"></span>
22 </li>
23 </ul>
24 <ul class="mui-table-view" style='margin-top: 16px;'>
25 <li class="mui-table-view-cell">
26 系统信息
27 </li>
28 </ul>
29 <ul class="mui-table-view mui-table-view-radio">
30
31 </ul>
32
33 <div
34 style="width: 100%;margin-top: 16px;background: #f2a11c; text-align: center;color: #fff;"
35 class="mui-table-view-cell exit-btn"
36 >
37 退出
38 </div>
39 </div>
40 <script src="../../js/mui.js"></script>
41 <script src="../../js/common.js" type="text/javascript" charset="utf-8"></script>
42 <script type="text/javascript" src="../../js/request.js" ></script>
43 <script type="text/javascript">
44 (function ($, doc) {
45 var changeFlag = false;// 是否切换了系统
46 var logoutUrl = '/a/logout';
47 $.init({
48 beforeback: function() {
49 if(changeFlag){
50 var list = plus.webview.currentWebview().opener();
51 //触发列表界面的自定义事件(refresh),从而进行数据刷新
52 mui.fire(list, 'refresh',{ getCountFlag: true });
53 //返回true,继续页面关闭逻辑
54 return true;
55 }
56
57 }
58 })
59 $.plusReady(function() {
60
61 plus.runtime.getProperty(plus.runtime.appid, function(info){
62 console.log(info.version);
63 document.querySelector('.version').innerHTML = '当前版本V: '+ info.version;
64 });
65
66 var ul = document.body.querySelector('.mui-table-view-radio');
67 console.log(plus.storage.getItem('currDept'))
68 var deptId = JSON.parse(plus.storage.getItem('currDept')).deptId;
69 var btnArray = ['确认', '取消'];
70 if(plus.storage.getItem('deptList')){
71 var deptList = JSON.parse(plus.storage.getItem('deptList'));
72 for(var i=0; i<deptList.length; i++){
73 var li = document.createElement('li');
74 li.className = deptId === deptList[i].deptId ? 'mui-table-view-cell mui-selected theme_font_warning':'mui-table-view-cell';
75 li.setAttribute('data-id',deptList[i].deptId);
76 li.setAttribute('data-deptType',deptList[i].deptType);
77 li.setAttribute('data-deptname',deptList[i].deptName);
78 li.innerHTML = '<a class="mui-navigate-right">' + (deptList[i].deptName) + '</a>';
79 ul.appendChild(li)
80 }
81 };
82
83 mui('.mui-content').on('tap', '.exit-btn' ,function() {
84 mui.confirm('是否确认退出当前账号?', '确认', btnArray, function(e) {
85 if (e.index === 0) {
86 mui.ajaxRequest(logoutUrl,{
87 type: 'GET',
88 data: {},
89 success: function(data){
90 if(data.code === 200){
91 plus.storage.clear('searchHistory')
92 plus.storage.clear('currDept')
93 plus.storage.clear('deptList')
94
95 common.openwin('../login/index', {})
96 }
97 },
98 error: function(){
99 //mui.toast('网络异常,请稍后在试');
100 }
101 })
102 }
103 },'div')
104 })
105
106 mui('.mui-table-view-radio').on('tap','.mui-table-view-cell',function(){
107 var _this = this;
108 if(this.dataset.id === JSON.parse(plus.storage.getItem('currDept')).deptId){
109 return ;
110 }
111 mui.confirm('是否确认切换库房?', '确认', btnArray, function(e) {
112 if (e.index == 0) {
113 //与后台交互
114 var currentDept = {
115 deptName: _this.dataset.deptname,
116 deptId: _this.dataset.id,
117 deptType: _this.dataset.depttype,
118 lastSelect: true
119 }
120 let history = undefined;// 设置历史记录数据结构
121 if(currentDept.deptType === '3' || currentDept.deptType === '4' ){
122 history = {
123 'acceptance':{
124 'main_list': [],
125 'sub_list':[]
126 },
127 'grounding':{
128 'main_list': [],
129 'sub_list':[]
130 },
131 'pickingOff':{
132 'main_list': [],
133 'sub_list':[]
134 },
135 'stock':{
136 'main_list': [],
137 }
138 }
139 }else{
140 history = {
141 'basicMedicine':{
142 'main_list': [],
143 'sub_list':[]
144 },
145 'stock':{
146 'main_list': [],
147 }
148 }
149 }
150
151 plus.storage.setItem('currDept',JSON.stringify(currentDept));
152 console.log(plus.storage.getItem('currDept'));
153 var url = '/a/cacheCurrentDept/'+ currentDept.deptId
154 mui.ajaxRequest(url,{
155 type: 'get',
156 showWaiting: true,
157 success: function(data){
158 if(data.code === 200){
159 changeFlag = true;
160 plus.storage.setItem('searchHistory',JSON.stringify(history));
161 document.querySelector('.theme_font_warning').className = 'mui-table-view-cell'
162 mui.toast('切换系统成功',{ type: 'div' });
163 _this.className = 'mui-table-view-cell mui-selected theme_font_warning';
164 }else{
165 mui.toast('切换系统失败',{ div: 'type' });
166 }
167 },
168 error: function(xhr,type,errorThrown){
169 alert(xhr.responseText)
170 }
171 });
172 }
173 },'div')
174 //
175 })
176 })
177 }(mui, document))
178 </script>
179 </body>
180
181 </html>
1 <!doctype html>
2 <html>
3
4 <head>
5 <meta charset="utf-8">
6 <title></title>
7 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
8 <link href="../../css/mui.css" rel="stylesheet" />
9 <link rel="stylesheet" type="text/css" href="../../css/home.css" />
10 <link href="../../css/index_view.css" rel="stylesheet" />
11 <link rel="import" href="../../tpl/tips.html" id="tips" />
12 </head>
13
14 <body>
15 <div class="mui-content" id="tipDetail">
16
17 </div>
18 <script src="../../js/mui.js"></script>
19 <script src="../../js/template-web.js" type="text/javascript" charset="utf-8"></script>
20 <script src="../../js/utils.js" type="text/javascript" charset="utf-8"></script>
21 <script src="../../js/request.js" type="text/javascript" charset="utf-8"></script>
22 <script type="text/javascript">
23 (function($, doc) {
24 // 挂载模板
25 var utils = new Utils();
26 utils.appendModule('#tips');
27 $.plusReady(function() {
28 $.init();
29 plus.screen.lockOrientation("portrait-primary");
30 var self = plus.webview.currentWebview();
31
32 var params = JSON.parse(self.tipId);
33 console.log(params)
34 var detialData = { list: [] };
35 plus.nativeUI.showWaiting()
36 mui.ajaxRequest('/a/pad/drugreminddetail/findDrugRemindDetail',{
37 data: { id: params.id },
38 success: function(data){
39 plus.nativeUI.closeWaiting()
40 var result = data.data;
41 detialData.list.push(result)
42 detialData.title = params.title;
43 detialData.tipdate = params.tipdate;
44 detialData.remindType = params.remindType;
45 console.log(detialData)
46 template(detialData);
47 },
48 error: function(xhr,type,errorThrown){
49 alert(xhr.responseText)
50 }
51 })
52
53
54 });
55 function template(data){
56 utils.innerTplHtml('tips-tpl', '#tipDetail', data);
57 }
58 }(mui, document))
59 </script>
60 </body>
61
62 </html>
1 <!DOCTYPE html>
2 <html>
3
4 <head>
5 <meta charset="utf-8">
6 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
7 <title>入口页面</title>
8 <link href="../css/mui.min.css" rel="stylesheet" />
9 <style type="text/css">
10 body {
11 background-color: black;
12 }
13 </style>
14 </head>
15
16 <body>
17 <script src="../js/mui.min.js"></script>
18 <script type="text/javascript" charset="utf-8">
19 mui.init();
20 mui.plusReady(function() {
21 /**
22 * 获取本地存储中launchFlag的值
23 * 若存在,说明不是首次启动,直接进入首页;
24 * 若不存在,说明是首次启动,进入引导页;
25 */
26 var launchFlag = plus.storage.getItem("launchFlag");
27 if(launchFlag) {
28 mui.openWindow({
29 url: "login/index.html",
30 id: "login/index.html",
31 extras: {
32 mark: "index" //额外的参数,仅仅是个标识,实际开发中不用;
33 }
34 });
35 } else {
36 mui.openWindow({
37 url: "guide.html",
38 id: "guide"
39 });
40 }
41 });
42 </script>
43 </body>
44
45 </html>
...\ No newline at end of file ...\ No newline at end of file
1 input{font-family: '\5FAE\8F6F\96C5\9ED1','\9ED1\4F53','\5B8B\4F53'; -webkit-appearance: none;}
2 input,button,select,textarea{padding: 0;font: inherit;outline: none;border: 0;border-radius: 0;-webkit-tap-highlight-color: transparent;appearance: none;-webkit-appearance: none;background: transparent;line-height: normal;box-sizing: border-box;-webkit-writing-mode: horizontal-tb;outline: 0;resize: none;color: inherit;white-space: pre-wrap;word-wrap: break-word;-webkit-rtl-ordering: logical;user-select: text;/*flex-direction: column;*/}
3 input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{-webkit-appearance: none !important; margin: 0;}
4 input[type=text],input[type=password]{
5 line-height: normal;
6 height: auto;
7 margin-bottom: inherit;
8 border: none;
9 outline: none;
10 background: none;
11 }
12 .ui-page-login,
13 body {
14 width: 100%;
15 height: 100%;
16 margin: 0px;
17 padding: 0px;
18 }
19 .mui-content{
20 height: 100%;
21 background: url(../../../assest/loginBg.jpg);
22 opacity: .8;
23 background-size: cover;
24 }
25 .am-title{
26 text-align: center;
27 font-size: 26px;
28 color: #F2A11C;
29 padding: 100px 0;
30 }
31 #login-form{
32 padding: 0 15px;
33 }
34 .am-input-row{
35 display: flex;
36 width: 100%;
37 height: 60px;
38 border: solid 1px goldenrod;
39 border-radius: 60px;
40 align-items: center;
41 justify-content: center;
42 padding: 0 15px;
43 margin-bottom: 20px;
44 }
45 .am-input-label{
46 width: 22%;
47 text-align: center;
48 }
49 .am-input-control{
50 width: 100%;
51 }
52 .am-input-control input{
53 width: 78%;
54 }
55 #login{
56 width: 100%;
57 border-radius: 40px;
58 margin-top: 36px;
59 }
60
1 <!DOCTYPE html>
2 <html class="ui-page-login">
3 <head>
4 <meta charset="utf-8">
5 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
6 <title></title>
7 <link href="../../css/mui.min.css" rel="stylesheet" />
8 <link rel="stylesheet" type="text/css" href="css/style.css"/>
9 </head>
10
11 <body>
12 <div class="mui-content">
13 <div class="am-title">药品物流管理系统</div>
14 <form id='login-form'>
15 <div class="am-input-row">
16 <label class="am-input-label">
17 <img src="../../assest/userlogin.svg" height="24" width="24" />
18 </label>
19 <div class="am-input-control">
20 <input id='account' type="text" placeholder="请输入账号"/>
21 </div>
22 </div>
23 <div class="am-input-row">
24 <label class="am-input-label">
25 <img src="../../assest/password.svg" height="24" width="24" />
26 </label>
27 <div class="am-input-control">
28 <input id='password' type="password" placeholder="请输入密码"/>
29 </div>
30 </div>
31 </form>
32 <div class="mui-content-padded">
33 <button id='login' Readonly class="mui-btn mui-btn-block mui-btn-warning" data-loading-text = "登录中" data-loading-icon-position="right">登 录</button>
34 </div>
35
36 </div>
37 <script src="../../js/mui.min.js"></script>
38 <script src="../../js/common.js"></script>
39 <script type="text/javascript" src="../../js/request.js" ></script>
40 <script>
41 (function($, doc) {
42 $.init({
43 statusBarBackground: '#f7f7f7'
44 });
45 $.plusReady(function() {
46 plus.screen.lockOrientation("portrait-primary");
47 var loginButton = doc.getElementById('login');
48 var accountBox = doc.getElementById('account');
49 var passwordBox = doc.getElementById('password');
50 var btnArray = ['确认'];
51 loginButton.addEventListener('tap', function(event) {
52 document.activeElement.blur(); // 隐藏软键盘
53 if(!accountBox.value) return mui.toast('请输入用户名',{ type: 'div' });
54 if(!passwordBox.value) return mui.toast('请输入密码',{ type: 'div' });
55 mui(this).button('loading');
56 var _this = this;
57 mui.ajaxRequest('/a/entryPass/entryptPassword',{
58 type: 'POST',
59 data: {
60 password: passwordBox.value
61 },
62 success: function(data){
63 if(data.code === 200){
64 let entryPwd = data.data.password;
65 mui.ajaxRequest('/a/login',{
66 type: 'POST',
67 data: {
68 username: accountBox.value,
69 password: entryPwd
70 },
71 success: function(res){
72 mui(_this).button('reset');
73 if(res.code === 200){
74 console.log(res)
75 var flag = setUser(res.data);
76 if(!flag) return mui.toast('请重新进行登陆操作',{ duration:'long', type:'div' });
77 common.openwin('../home/index',{})
78 }else{
79 mui.toast(res.msg,{ type: 'div' });
80 mui(_this).button('reset');
81 }
82
83 },
84 error: function(xhr,type,errorThrown){
85 console.log(xhr.responseText)
86 }
87 })
88 }else{
89 mui.alert('账号或密码错误', '', btnArray, function(e) {
90 if (e.index == 0) {
91 // alert('你点击了是');
92 }
93 },'div')
94 }
95 },
96 error: function(xhr,type,errorThrown){
97 mui(_this).button('reset');
98
99 }
100 })
101 });
102 });
103 }(mui, document));
104
105 function setUser(res){
106 var deptInfo = res.deptInfo;
107 var deptList = [];
108 var currDept = {};
109 mui.each(deptInfo,function(index,item){
110 if(item.deptType === "3" || item.deptType === '4'|| item.deptType === '5'){
111 var deptItem = {
112 deptId: item.deptId,
113 deptType: item.deptType,
114 deptName: item.deptName,
115 lastSelect: item.lastSelect
116 }
117 if(item.lastSelect){
118 currDept = item;
119 }
120 deptList.push(deptItem);
121 }
122 });
123 currDept = currDept.deptId ? currDept: deptList[0];
124 plus.storage.setItem('currDept',JSON.stringify(currDept));
125 plus.storage.setItem('deptList',JSON.stringify(deptList));
126 // 后台设置当前选中库房
127 var url = '/a/cacheCurrentDept/'+ currDept.deptId
128 mui.ajaxRequest(url,{
129 type: 'get',
130 showWaiting: true,
131 success: function(data){
132 if(data.code === 200){
133 mui.toast('设置当前系统成功',{ type: 'div' });
134 let history = undefined;// 设置历史记录数据结构
135 if(currDept.deptType === '3' || currDept.deptType === '4' ){
136 history = {
137 'acceptance':{
138 'main_list': [],
139 'sub_list':[]
140 },
141 'grounding':{
142 'main_list': [],
143 'sub_list':[]
144 },
145 'pickingOff':{
146 'main_list': [],
147 'sub_list':[]
148 },
149 'stock':{
150 'main_list': [],
151 }
152 }
153 }else{
154 history = {
155 'acceptance':{
156 'main_list': [],
157 'sub_list':[]
158 },
159 'stock':{
160 'main_list': [],
161 }
162 }
163 }
164 plus.storage.setItem('searchHistory',JSON.stringify(history));
165 }else{
166 mui.toast('设置切换系统失败,请重新登陆',{ type: 'div' });
167 return false
168 }
169 },
170 error: function(xhr,type,errorThrown){
171 return false
172 }
173 });
174 return true
175 }
176 </script>
177 </body>
178
179 </html>
...\ No newline at end of file ...\ No newline at end of file
1 <!doctype html>
2 <html
3 <head>
4 <meta charset="UTF-8">
5 <title></title>
6 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
7 <link href="../../css/mui.min.css" rel="stylesheet" />
8 <link href="../../css/themes.css" rel="stylesheet" />
9 <link href="../../css/index_view.css" rel="stylesheet" />
10 <link rel="import" href="./move_list_tpl.html" id="move_list"/>
11 <style>
12 .competition {
13 margin: 10px 0 0 0;
14 position: relative;
15 }
16 .competition>.head {
17 display: flex;
18 justify-content: flex-start;
19 align-items: center;
20 padding: 5px 0;
21 color: #333;
22 font-size: 16px;
23 background-color: #fff;
24 }
25 .mui-table-view-cell {
26 margin: 5px 7px!important;
27 padding: 0;
28 border-radius: 6px;
29 background: #efeff4!important;
30 }
31 .mrl-5{
32 margin-left: 5%;
33 }
34 .text-leart {
35 display: flex;
36 justify-content: flex-start;
37 align-items: center;
38 min-height: 150px;
39 margin-top: 10px;
40 background: #fff;
41 font-size: 16px;
42 padding-left: 5%;
43 }
44 .head-left, .head-right{
45 display: flex;
46 justify-content: flex-start;
47 align-items: center;
48 padding-left: 5%;
49 height: 100%;
50 width: 40%;
51 }
52 .head-right .qrcode{
53 display: flex;
54 justify-content: flex-start;
55 align-items: center;
56 }
57 .mui-row>[class*=mui-col-] {
58 line-height: 30px;
59 }
60 </style>
61 </head>
62
63 <body>
64 <header class="mui-bar mui-bar-nav themes_bg_color">
65 <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left">
66 <label class="mui-pull-right theme_back_font">返回</label>
67 </a>
68 <h1 class="mui-title themes_title">货位移动</h1>
69 </header>
70 <div class="mui-content">
71 <div class="competition">
72 <div class="head">
73 <div class="head-left"><i class="mui-icon mui-icon-camera"></i>请扫描货位二维码</div>
74 <a href="#modal" class="head-right">
75 <div class="qrcode" id="qrcode" onclick="clicked()">
76 <img src="../../assest/qrcode.png" width="48" height="48"/>
77 </div>
78 </a>
79 </div>
80 <div id="content">
81 <div class="text-leart">
82 <div class="text-content">
83 <i class="mui-icon mui-icon-locked"></i>扫描货位成功后,即显示该货位对应商品!
84 </div>
85 </div>
86 </div>
87 </div>
88 </div>
89
90 <script src="../../js/mui.js"></script>
91 <script src="../../js/mui.pullToRefresh.js"></script>
92 <script src="../../js/mui.pullToRefresh.material.js"></script>
93 <script src="../../js/template-web.js" type="text/javascript" charset="utf-8"></script>
94 <script src="../../js/utils.js" type="text/javascript" charset="utf-8"></script>
95 <script src="../../js/common.js" type="text/javascript" charset="utf-8"></script>
96 <script src="../../js/request.js" type="text/javascript" charset="utf-8"></script>
97
98
99 <script type="text/javascript">
100 //货位码
101 var locationName = "";
102 function clicked(){
103 common.openwin('../commonPages/qrcode',true,{ titleText: '扫货位码' })
104 }
105
106 /*获取二维码返回值*/
107 function scaned(t, r, f) {
108
109 console.log(r+"二维码读取的数据");//返回二维码读取的数据
110 locationName = r;
111 getData(locationName);
112 }
113 //将tpl模板添加在页面上
114 var utils = new Utils();
115 utils.appendModule('#move_list');
116 //渲染模板
117 function renderTemplate(data, insertType){
118
119 utils.innerTplHtml('move_list_tpl', "#content", data, insertType);
120 }
121 function getData(locationName,refreshFlag){
122
123 var requestUrl = "/a/pad/locAdjust/getMedicinalLists";
124 console.log(locationName)
125 var postData = {locationName:locationName};
126 mui.ajaxRequest(requestUrl,{
127 type: 'POST',
128 data: postData,
129 success: function(data){
130
131 if(data.code == 200){
132 var resData = data.data;
133 var total = resData.detailVos.totalPage;
134 if(resData.detailVos.list.length == 0 || total == 0){
135 document.querySelectorAll('.text-content')[0].innerHTML = '此货位下没有商品!';
136 }else{
137 return renderTemplate(resData,false);
138 }
139 }else{
140 //继续移动,无数据,直接刷新
141 if(refreshFlag){
142 window.location.reload();
143 }else{
144 mui.alert(data.msg,'提示','确定',function (e) {},'div');
145 }
146 }
147 },
148 error: function(xhr,type,errorThrown){
149 console.log(xhr.responseText)
150 }
151 });
152 }
153
154 (function($,window) {
155
156 $.init({
157 beforeback:function(){
158 var list = plus.webview.currentWebview().opener();
159 mui.fire(list, 'refresh',{ getCountFlag: true });
160 var cur= plus.webview.currentWebview();
161 plus.webview.close(cur.id)
162 return true;
163 }
164 });
165 $.plusReady(function(){
166
167 window.addEventListener('pagefresh',function(event){
168
169 console.log(JSON.stringify(event.detail))
170 //var datas = JSON.parse(event.detai);
171 if(typeof event.detail.params == "string"){
172 var params = JSON.parse(event.detail.params);
173 oldLocationName = params.oldLocationName;
174 getData(oldLocationName,true);
175 }
176 })
177 //绑定点击事件(移动) - 进入详情页
178 $('#content').on('tap','.moveDrugs',function(event){
179
180 var dataset = event.target.dataset;
181 common.openwin('moveDetail',{ params: JSON.stringify({dataset}) },false)
182 })
183
184 })
185
186 })(mui,window);
187 </script>
188 </body>
189
190 </html>
...\ No newline at end of file ...\ No newline at end of file
1 <!--上架 - 详情页 - wwb-->
2 <!doctype html>
3 <html>
4 <head>
5 <meta charset="UTF-8">
6 <title></title>
7 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
8 <link href="../../css/mui.min.css" rel="stylesheet" />
9 <link href="../../css/themes.css" rel="stylesheet" />
10 <link href="../../css/check.css" rel="stylesheet"/>
11 <link href="../../css/index_view.css" rel="stylesheet" />
12 <link rel="import" href="./move_new_tpl.html" id="move_new"/>
13 <style>
14 .competition {
15 margin: 10px 0 0 0;
16 position: relative;
17 }
18 .competition>.head {
19 display: flex;
20 justify-content: flex-start;
21 align-items: center;
22 padding: 5px 0;
23 color: #333;
24 font-size: 16px;
25 background-color: #fff;
26 }
27 .mui-table-view-cell {
28 margin: 5px 7px!important;
29 padding: 0;
30 border-radius: 6px;
31 background: #efeff4!important;
32 }
33 .mrl-5{
34 margin-left: 5%;
35 }
36 .text-leart {
37 display: flex;
38 justify-content: flex-start;
39 align-items: center;
40 min-height: 150px;
41 margin-top: 10px;
42 background: #fff;
43 font-size: 16px;
44 padding-left: 5%;
45 }
46 .head-left, .head-right{
47 display: flex;
48 justify-content: flex-start;
49 align-items: center;
50 padding-left: 5%;
51 height: 100%;
52 width: 40%;
53 }
54 .head-right .qrcode{
55 display: flex;
56 justify-content: flex-start;
57 align-items: center;
58 }
59 .mui-checkbox-content{
60 margin-bottom: 20px;
61 display: flex;
62 justify-content: center;
63 align-items: center;
64 font-size: 20px;
65 }
66 .mui-checkbox input[type=checkbox]{
67 position: unset !important;
68 }
69 .mui-checkbox label, .mui-radio label {
70 width: auto !important;
71 padding-right: 0 !important;
72 }
73 </style>
74 </style>
75 </head>
76
77 <body>
78 <header class="mui-bar mui-bar-nav themes_bg_color">
79 <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left">
80 <label class="mui-pull-right theme_back_font">返回</label>
81 </a>
82 <h1 class="mui-title themes_title">货位移动详情</h1>
83 </header>
84 <div class="mui-content">
85 <div class="competition">
86 <div class="head">
87 <div class="head-left"><i class="mui-icon mui-icon-camera"></i>请扫描新货位</div>
88 <a href="#modal" class="head-right">
89 <div class="qrcode" id="qrcode">
90 <img src="../../assest/qrcode.png" width="48" height="48"/>
91 </div>
92 </a>
93 </div>
94 <div id="content">
95 <div class="text-leart">
96 <div class="text-content">
97 <i class="mui-icon mui-icon-locked"></i>扫描货位成功后,即可操作移动到新货位!
98 </div>
99 </div>
100 </div>
101 </div>
102 </div>
103
104 <script src="../../js/mui.min.js"></script>
105 <script src="../../js/jquery.min.js"></script>
106 <script src="../../js/template-web.js" type="text/javascript" charset="utf-8"></script>
107 <script src="../../js/utils.js" type="text/javascript" charset="utf-8"></script>
108 <script src="../../js/common.js" type="text/javascript" charset="utf-8"></script>
109 <script src="../../js/request.js" type="text/javascript" charset="utf-8"></script>
110 <script type="text/javascript">
111 //货位码
112 var locationName = "",storeId = "",medName = "";
113 /*获取二维码返回值*/
114 function scaned(t, r, f) {
115
116 console.log(r+"二维码读取的数据");//返回二维码读取的数据
117 locationName = r;
118 judgeLocationMove(locationName)
119 }
120
121 // 判断是否可以进行货位移动
122 function judgeLocationMove(locationName){
123
124 var requestUrl = "/a/pad/locAdjust/findNewLocInfo";
125 var postData = {locationName:locationName,storeId:storeId};
126 mui.ajaxRequest(requestUrl,{
127 type: 'POST',
128 data: postData,
129 success: function(data){
130
131 if(data.code == 200){
132 if(data.data.returnFla){
133 var sendData = data.data;
134 renderTemplate(sendData,false);
135 }else{
136 mui.alert(medName+"不能移动到货位:"+locationName+"下,请重新扫描货位码!",'提示','确定',function (e) {},'div')
137 }
138 }else{
139 mui.alert(data.msg,'提示','确定',function (e) {},'div')
140 }
141 },
142 error: function(xhr,type,errorThrown){
143 console.log(xhr.responseText)
144 }
145 });
146
147 }
148 //将tpl模板添加在页面上
149 var utils = new Utils();
150 utils.appendModule('#move_new');
151 //渲染模板
152 function renderTemplate(data, insertType){
153
154 utils.innerTplHtml('move_new_tpl', "#content", data, insertType);
155 }
156 (function($) {
157
158 $.plusReady(function(){
159
160 var self = plus.webview.currentWebview();
161 var params = JSON.parse(self.params);//获得参数
162 var paramData = params.dataset;
163 var oldLocationName = paramData.locationname;
164 //绑定点击事件(移动) - 进入详情页
165 $('#content').on('tap','.confirmMove',function(event){
166
167 var target = event.target,locationName = target.dataset.locationname,
168 targetLocId = target.dataset.targetlocid,
169 conversionRate = target.dataset.conversionrate,checked = false;
170 checked = $('#content input[type=checkbox]')[0].checked;
171 var btnArray = ['否', '是'];
172 mui.confirm('是否确认移动?','警告',btnArray,function(e){
173 if (e.index == 1) {
174
175 var requestUrl = "/a/pad/locAdjust/submitLocJust";
176 var postData = {
177 locationName:locationName,
178 targetLocId:targetLocId,
179 conversionRate:conversionRate,
180 storeId:storeId,
181 locAdjustNum:paramData.usablequantity,
182 locUnitCode:paramData.unitcode
183 };
184 if(checked){
185 postData.isEditLoc = 1;
186 }
187 mui.ajaxRequest(requestUrl,{
188 type: 'POST',
189 data: postData,
190 success: function(data){
191
192 if(data.code == 200){
193 mui.toast('提交成功');
194 var parmasData = {};
195 parmasData.finishUrl = '../home/index';
196 parmasData.keepUrl = '../move/index';
197 parmasData.resultType = 'move';
198 parmasData.itemData = {oldLocationName:oldLocationName};
199 common.openwin('../result/index',{ parmas: JSON.stringify(parmasData) },{
200 titleText: '结果',
201 autoBackButton: false
202 })
203 }else{
204 mui.alert(data.msg,'提示','确定',function (e) {},'div')
205 }
206 },
207 error: function(xhr,type,errorThrown){
208 console.log(xhr.responseText)
209 }
210 });
211 }
212 },'div');
213 });
214
215 //点击扫描
216 $('.head').on('tap','#qrcode',function(event){
217
218 var target = event.target;
219 storeId = paramData.id,medName = paramData.name;
220 common.openwin('../commonPages/qrcode',true,{ titleText: '扫货位码' })
221 });
222
223 })
224 })(mui);
225 </script>
226 </body>
227
228 </html>
...\ No newline at end of file ...\ No newline at end of file
1 <!-- 扫货下列显示 -->
2 <script type="text/html" id='move_list_tpl'>
3 <div class="mui-card">
4 <!--页眉,放置标题-->
5 <div class="mui-card-header" data-id="{{locationId}}">货位:{{locationName}}</div>
6 <!--内容区-->
7 <div class="mui-card-content">
8 <ul class="mui-table-view" id="list_warp">
9 {{ each detailVos.list value i}}
10 <li class="mui-table-view-cell mui-media">
11 <div class="mui-media-body" style="padding: 3%;">
12 <div class="mui-col-xs-12 mui-ellipsis mui-h4" style="font-weight: bold;margin-bottom: 8px;">{{value.medicinalDesc}}</div>
13 <div class="mui-row">
14 <span class="mui-col-xs-8 mui-ellipsis">规格:{{value.ctmmSpecification}}</span>
15 <span class="mui-col-xs-2" style="position: absolute;top: 25%;right: 2%;">
16 <button data-locationName="{{locationName}}" data-id="{{value.storeId}}" data-name="{{value.medicinalDesc}}" data-usableQuantity="{{value.usableQuantity}}" data-unitCode="{{value.unitCode}}"
17 style="height: 60px;box-shadow: 4px -4px 4px #888888;" type="button"
18 class="mui-btn mui-btn-warning moveDrugs">移动</button>
19 </span>
20 <span class="mui-col-xs-10 mui-ellipsis">厂商:{{value.ctmmManufacturerName}}</span>
21 <span class="mui-col-xs-6 mui-ellipsis">单位:{{value.unit}}</span>
22 <span class="mui-col-xs-6 mui-ellipsis">数量:{{value.usableQuantity}}</span>
23 <span class="mui-col-xs-8 mui-ellipsis">生产批号:{{value.lot}}</span>
24 <span class="mui-col-xs-6 mui-ellipsis">生产日期:{{value.productDate}}</span>
25 <span class="mui-col-xs-6 mui-ellipsis">有效期至:{{value.validEndDate}}</span>
26 </p>
27 </div>
28 </li>
29 {{/each}}
30 </ul>
31 </div>
32 </div>
33 </script>
...\ No newline at end of file ...\ No newline at end of file
1 <!-- 扫货下列显示 -->
2 <script type="text/html" id='move_new_tpl'>
3 <div class="mui-card">
4 <!--页眉,放置标题-->
5 <div class="mui-card-header">新货位:{{locationName}}</div>
6 <!--内容区-->
7 <div class="mui-card-content" style="padding: 20px 0;">
8 <div class="mui-checkbox-content mui-checkbox">
9 <input name="checkbox" value="item" type="checkbox">
10 <label>以后入库的也放在这里</label>
11 </div>
12 <div style="text-align: center;">
13 <button data-locationName="{{locationName}}" data-targetLocId="{{locationId}}" data-conversionRate="{{conversionRate}}"
14 style="height: 50px;width: 100px;box-shadow: 4px -4px 4px #888888;" type="button"
15 class="mui-btn mui-btn-warning confirmMove">确认移动</button>
16 </div>
17 </div>
18 </div>
19 </script>
...\ No newline at end of file ...\ No newline at end of file
1 <script type="text/html" id='detail_tpl'>
2 <div style="margin-top:10px;">
3 {{ each list value i }}
4 <ul class="mui-table-view" style="margin-bottom:8px;">
5 <li class="mui-table-view-cell mui-collapse mui-active">
6 <a class="mui-navigate-right" href="#">单据信息</a>
7 <div class="mui-collapse-content">
8 <div class="mui-input-row">
9 <label>拣货单号</label>
10 <p class="detailRow_content">{{ pickingOredr ? pickingOredr: ''}}</p>
11 </div>
12 <div class="mui-input-row">
13 <label>单号</label>
14 <p class="detailRow_content">{{ applyOrder ? applyOrder: ''}}</p>
15 </div>
16 <div class="mui-input-row">
17 <label>申领部门</label>
18 <p class="detailRow_content">{{ applyDeptName ? applyDeptName: ''}}</p>
19 </div>
20 <div class="mui-input-row">
21 <label>状态</label>
22 <p class="detailRow_content">{{ value.status === 0 ? '待拣货': '已拣货' }}</p>
23 </div>
24 <div class="mui-input-row">
25 <label>拣货人</label>
26 <p class="detailRow_content">{{ pickingUserName ? pickingUserName: '' }}</p>
27 </div>
28 <div class="mui-input-row">
29 <label>拣货时间</label>
30 <p class="detailRow_content">{{ pickingTime ? pickingTime: ''}}</p>
31 </div>
32 </div>
33 </li>
34 </ul>
35 <ul class="mui-table-view" style="margin-bottom:8px;">
36 <li class="mui-table-view-cell mui-collapse mui-active">
37 <a class="mui-navigate-right" href="#">产品信息</a>
38 <div class="mui-collapse-content">
39 <div class="mui-input-row">
40 <label>通用名</label>
41 <p class="detailRow_content">{{value.ctmmGenericName}}</p>
42 </div>
43 <div class="mui-input-row">
44 <label>规格</label>
45 <p class="detailRow_content">{{value.ctmmSpecification}}</p>
46 </div>
47 <div class="mui-input-row">
48 <label>生产厂家</label>
49 <p class="detailRow_content">{{value.ctmmManufacturerName}}</p>
50 </div>
51 <div class="mui-input-row">
52 <label>生产批号</label>
53 <p class="detailRow_content">{{value.lot}}</p>
54 </div>
55 <div class="mui-input-row">
56 <label>生产日期</label>
57 <p class="detailRow_content">{{value.productDate}}</p>
58 </div>
59 <div class="mui-input-row">
60 <label>有效期至</label>
61 <p class="detailRow_content">{{value.validEndDate}}</p>
62 </div>
63 <div class="mui-input-row">
64 <label>包装规格</label>
65 <p class="detailRow_content">{{value.packageSpecification}}</p>
66 </div>
67 <div class="mui-input-row">
68 <label>单位</label>
69 <p class="detailRow_content">{{value.replanUnit}}</p>
70 </div>
71 <div class="mui-input-row">
72 <label>指示货位</label>
73 <p class="detailRow_content">{{value.locName}}</p>
74 </div>
75 <div class="mui-input-row">
76 <label>数量</label>
77 <p class="detailRow_content">{{value.allocationNum}}</p>
78 </div>
79 <div class="mui-input-row">
80 {{ if hasPicked }}
81 <label class='font-warning'>实际下架数量</label>
82 <input class="mui-input editInput relNum" type="number" pattern="[0-9]*" value="{{ value.allocationNum }}" />
83 {{ else }}
84 <label>实际下架数量</label>
85 <p class="detailRow_content">{{ value.pickingNum }}</p>
86 {{ /if }}
87 </div>
88 </div>
89 </li>
90 </ul>
91 {{ /each }}
92 </div>
93 </script>
...\ No newline at end of file ...\ No newline at end of file
1
2 <script type="text/html" id='picking_tpl'>
3 {{ each list value i}}
4 <div class="am-card scrollList-item am-card-full"
5 data-id="{{ value.id }}"
6 data-applyOrderNo="{{ applyOrderNo }}"
7 data-allocationNum="{{ value.allocationNum }}"
8 data-drugCode="{{ value.drugCode }}"
9 data-pickingNum="{{ value.pickingNum }}"
10 >
11 <div class="am-card-header">
12 <div class="am-card-header-content">
13 <span style="font-size: 18px; color: rgb(51, 51, 51); font-weight: bold;">
14 {{ value.ctmmGenericName ? value.ctmmGenericName:value.ctmmTradeName ? value.ctmmTradeName: '' }}</span>
15 </div>
16 <div class="am-card-header-extra">
17 <span>{{ value.type }}</span>
18 </div>
19 </div>
20 <div class="am-card-body">
21 <div class="am-flexbox am-flexbox-align-center">
22 <div class="am-flexbox-item">
23 单位:<span>{{ value.replanUnit }}</span>
24 </div>
25 {{ if hasPicked }}
26 <div class="am-flexbox-item">
27 <div class="am-list-item am-input-item am-list-item-middle">
28 <div class="am-list-line">
29 <div class="am-input-label am-input-label-4 font-warning">实到数量:</div>
30 <div class="am-input-control">
31 <input pattern="[0-9]*" type="number" data-index="{{ i }}" value="{{ value.allocationNum?value.allocationNum: '' }}" placeholder="请输入" class="allocationNum flex-item-input" />
32 </div>
33 </div>
34 </div>
35 </div>
36 {{ else }}
37 <div class="am-flexbox-item">
38 数量:<span>{{ value.pickingNum }}</span>
39 </div>
40 {{ /if }}
41 <div class="am-flexbox-item">
42 规格:<span>{{ value.ctmmSpecification }}</span>
43 </div>
44 </div>
45 <div class="am-flexbox am-flexbox-align-center">
46 <div class="am-flexbox-item">
47 货位:<span>{{ value.locName }}</span>
48 </div>
49 <div class="am-flexbox-item">
50 生产批号:<span>{{ value.lot }}</span>
51 </div>
52 <div class="am-flexbox-item">
53 生产日期:<span>{{ value.productDate }}</span>
54 </div>
55 </div>
56 <div class="am-flexbox am-flexbox-align-center">
57 <div class="am-flexbox-item">
58 生产厂家:<span>{{ value.ctmmManufacturerName }}</span>
59 </div>
60 </div>
61 </div>
62 <div class="am-card-footer">
63 <div class="am-card-footer-extra">
64 <button type="button" class="mui-btn mui-btn-blue mui-btn-outlined toPage" style="margin: 0 5px;" data-index="{{ i }}" data-id="{{ value.id }}">更多详情</button>
65 {{ if hasPicked }}
66 <button type="button" class="mui-btn mui-btn-blue mui-btn-danger submitButton" data-index="{{ i }}">确认拣货</button>
67 {{ /if }}
68 </div>
69 </div>
70 </div>
71 <div style="background-color: #f5f5f9; height: 6px;">
72 </div>
73 {{/each}}
74 </script>
...\ No newline at end of file ...\ No newline at end of file
1
2 <script type="text/html" id='picking_tpl'>
3 {{ each list value i}}
4 <div class="batch-wrapper">
5 <div class="checkoneParent">
6 <div class="mui-checkbox mui-left" style="width: 48px;height:48px;padding:50px 0 ;display: block;">
7 <input name="selected" class="checkone" type="checkbox" data-index="{{ (page-1)*pageSize + i }}" style="top: 35px;left: 10px;">
8 </div>
9 </div>
10 <div class="am-card scrollList-item am-card-full" style="width: 90%;border: none;"
11 data-id="{{ value.id }}"
12 data-drugCode="{{ value.drugCode }}"
13 data-allocationNum="{{value.allocationNum}}"
14 >
15 <div class="am-card-header">
16 <div class="am-card-header-content">
17 <span style="font-size: 18px; color: rgb(51, 51, 51); font-weight: bold;">
18 {{ value.ctmmGenericName ? value.ctmmGenericName:value.ctmmTradeName ? value.ctmmTradeName: '' }}</span>
19 </div>
20 <div class="am-card-header-extra">
21 <span>{{ value.type }}</span>
22 </div>
23 </div>
24 <div class="am-card-body">
25 <div class="am-flexbox am-flexbox-align-center">
26 <div class="am-flexbox-item">
27 单位:<span>{{ value.replanUnit }}</span>
28 </div>
29 {{ if hasPicked }}
30 <div class="am-flexbox-item">
31 <div class="am-list-item am-input-item am-list-item-middle">
32 <div class="am-list-line">
33 <div class="am-input-label am-input-label-4 font-warning">实到数量:</div>
34 <div class="am-input-control">
35 <input pattern="[0-9]*" type="number" data-index="{{ i }}" value="{{ value.allocationNum?value.allocationNum: '' }}" placeholder="请输入" class="allocationNum flex-item-input" />
36 </div>
37 </div>
38 </div>
39 </div>
40 {{ else }}
41 <div class="am-flexbox-item">
42 数量:<span>{{ value.allocationNum }}</span>
43 </div>
44 {{ /if }}
45 <div class="am-flexbox-item">
46 规格:<span>{{ value.ctmmSpecification }}</span>
47 </div>
48 </div>
49 <div class="am-flexbox am-flexbox-align-center">
50 <div class="am-flexbox-item">
51 货位:<span>{{ value.locName }}</span>
52 </div>
53 <div class="am-flexbox-item">
54 生产批号:<span>{{ value.lot }}</span>
55 </div>
56 <div class="am-flexbox-item">
57 生产日期:<span>{{ value.productDate }}</span>
58 </div>
59 </div>
60 <div class="am-flexbox am-flexbox-align-center">
61 <div class="am-flexbox-item">
62 生产厂家:<span>{{ value.ctmmManufacturerName }}</span>
63 </div>
64 </div>
65 </div>
66 </div>
67 </div>
68 {{/each}}
69 </script>
...\ No newline at end of file ...\ No newline at end of file
1 <!-- 拣货下架- 详情页 - yuwei-->
2 <!doctype html>
3 <html>
4 <head>
5 <meta charset="UTF-8">
6 <title></title>
7 <link rel="import" href="./detail_tpl.html" id="acc_detail_tpl"/>
8 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
9 <link href="../../css/mui.min.css" rel="stylesheet" />
10 <link href="../../css/themes.css" rel="stylesheet" />
11 <link href="../../css/index_view.css" rel="stylesheet" />
12 <link rel="stylesheet" href="../../css/check.css" />
13
14 </head>
15
16 <body>
17 <div class="mui-content detailRow">
18 <form class="mui-input-group" id="detailContent" style="background:none;">
19 <ul class="mui-table-view" style="margin-bottom:12px;">
20 <li class="mui-table-view-cell mui-collapse">
21 <a class="mui-navigate-right" href="#">产品信息</a>
22 <div class="mui-collapse-content">
23 <div class="mui-input-row">
24
25 </div>
26 </div>
27 </li>
28 </ul>
29 </form>
30 </div>
31 <script src="../../js/mui.min.js"></script>
32 <script src="../../js/template-web.js" type="text/javascript" charset="utf-8"></script>
33 <script src="../../js/utils.js" type="text/javascript" charset="utf-8"></script>
34 <script src="../../js/common.js" type="text/javascript" charset="utf-8"></script>
35 <script src="../../js/request.js" type="text/javascript" charset="utf-8"></script>
36 <script type="text/javascript">
37
38
39 (function($) {
40 var utils = new Utils();
41 utils.appendModule('#acc_detail_tpl');
42
43 function showData(data){
44 var html = template('detail_tpl', data);
45 document.getElementById('detailContent').innerHTML = html;
46 }
47
48 // 模板加载
49 $.plusReady(function(){
50 var self = plus.webview.currentWebview();
51 var details = JSON.parse(self.details);//获得参数
52 var detailData = {};
53
54 $.init({
55 beforeback: function() {
56 var list = plus.webview.currentWebview().opener();
57 mui.fire(list, 'pagefresh',{ selectTab: details.selected , hasPicked: true , query : details.query });
58 return true;
59 }
60 })
61 console.log('details*******************')
62 console.log(JSON.stringify(details))
63 var titleUrl = '/a/common/pickingorderdetail/getPickingDetailPad?pickingOrderNo=' + details.pickingOrderNo,
64 url = '/a/common/pickingorderdetail/detailList',
65 pickUrl = '/a/common/pickingorder/finishPicking';
66 if(details.hasPicked){
67 var groundBtn = '<button type="button" id="picking" class="mui-btn mui-btn-warning mui-btn-block" style="margin-bottom: 20px;" data-loading-text = "提交中" data-loading-icon-position="right">确认拣货</button>'
68 document.querySelector('.detailRow').insertAdjacentHTML("beforeEnd",groundBtn);
69 }
70 var postData = {
71 pickingOrderNo: details.pickingOrderNo,
72 id: details.id,
73 pickingStatus: details.pickingStatus
74 };
75 plus.nativeUI.showWaiting('加载中...');
76 mui.ajaxRequest(titleUrl,{
77 type: 'GET',
78 success: function(data){
79 if(data.code === 200){
80 for(var key in data.data){
81 detailData[key] = data.data[key];
82 detailData.hasPicked = details.hasPicked;
83 }
84 mui.ajaxRequest(url,{
85 type: 'POST',
86 data: postData,
87 success: function(data){
88 plus.nativeUI.closeWaiting();
89 if(data.code === 200){
90 detailData.list = data.data.list;
91 console.log(detailData)
92 showData(detailData);
93 if(details.hasAcceptance){
94 setTimeout(function(){
95 showOrHideBtn()
96 var acceptanceBtn = '<button type="button" id="acceptance" class="mui-btn mui-btn-warning mui-btn-block" style="margin-bottom: 20px;" data-loading-text = "提交中" data-loading-icon-position="right">确认拣货</button>'
97 document.querySelector('.detailRow').insertAdjacentHTML("beforeEnd",acceptanceBtn);
98 },100)
99 }
100
101 }else{
102 mui.toast(data.msg,{ type: 'div' });
103 }
104 },
105 error: function(xhr,type,errorThrown){
106 console.log(xhr.responseText)
107 }
108 });
109 }else{
110 mui.toast(data.msg,{ type: 'div' });
111 }
112
113 },
114 error: function(xhr,type,errorThrown){
115 console.log(xhr.responseText)
116 }
117 });
118
119
120 if(details.hasPicked){
121 var picking = document.querySelector('#picking');
122 picking.addEventListener('tap',function(e){
123 var num = detailData.list[0].allocationNum;
124 var realInputNum = document.querySelector('.relNum').value;
125 if(realInputNum > num){
126 return mui.toast('实际上架数量不得大于指示数量',{ type: 'div' });
127 }
128 if(realInputNum <=0){
129 return mui.toast('实际上架数量不得小于或等于0',{ type: 'div' });
130 }
131 var btnArray = ['否', '是'];
132 mui.confirm('是否确认拣货?', '操作提示', btnArray, function(e) {
133 if (e.index == 1) {
134 console.log(detailData)
135 var pickingDetail = [],postData = {},submitData = {};
136 postData.drugCode = detailData.list[0].drugCode;
137 postData.id = detailData.list[0].id;
138 postData.pickingNum = realInputNum
139 pickingDetail.push(postData);
140 submitData.applyNo = detailData.applyOrder;
141 submitData.pickingOrderNo = detailData.pickingOredr;
142 submitData.pickingDetail = pickingDetail;
143 console.log(JSON.stringify(submitData));
144 mui.ajaxRequest(pickUrl,{
145 type: 'POST',
146 data: submitData,
147 contentType: "application/json",
148 showWaiting: true,
149 success: function(data){
150 if(data.code === 200){
151 // mui.toast('下架成功',{ type: 'div' });
152 mui.toast('拣货成功',{ type: 'div' });
153 setTimeout(function(){
154 var page = plus.webview.getWebviewById('pickingOffList');
155 mui.fire(page,'pagefresh',{ selectTab: '1' ,query:{ selected:"left" } });
156 common.gotowin('pickingOffList',{ });
157 plus.webview.currentWebview().close();
158 },300)
159
160 // var parmasData = {};
161 // parmasData.finishUrl = '../pickingOff/index';
162 // parmasData.keepUrl = 'pickingOffList';
163 // parmasData.resultType = 'picking';
164 // parmasData.itemData = details.orderInfo;
165 // common.openwin('../result/index',{ parmas: JSON.stringify(parmasData) },{
166 // titleText: '结果',
167 // autoBackButton: false
168 // })
169 }else{
170 mui.alert(data.msg)
171 }
172 },
173 error: function(xhr,type,errorThrown){
174 console.log(xhr.responseText)
175 }
176 });
177 }
178 },'div')
179 })
180 }
181
182 });
183 })(mui);
184
185 </script>
186 </body>
187
188 </html>
...\ No newline at end of file ...\ No newline at end of file
1 <!-- 拣货下架 已拣货 页面 - 列表页 - yuwei-->
2 <!doctype html>
3 <html>
4 <head>
5 <meta charset="UTF-8">
6 <title></title>
7 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
8 <link rel="import" href="./list_tpl.html" id="list_tpl"/>
9 <link href="../../css/mui.min.css" rel="stylesheet" />
10 <link href="../../css/themes.css" rel="stylesheet" />
11 <link href="../../css/index_view.css" rel="stylesheet" />
12 </head>
13
14 <body>
15
16 <header class="mui-bar mui-bar-nav themes_bg_color">
17 <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left">
18 <label class="mui-pull-right theme_back_font">返回</label>
19 </a>
20 <h1 class="mui-title themes_title">药品信息</h1>
21
22 </header>
23 <div class="mui-content">
24 <div class="mui-input-row mui-search search_head" onclick="toSearchPage()">
25 <input type="search" class="mui-input-clear" placeholder="通用名/商品名/生产厂家" readonly="readonly" >
26 </div>
27 <div class="home-card-wrapper" style="padding: 8px;margin-top: 0;margin-bottom: 8px;">
28 <div class="home-card-title">已拣货</div>
29 </div>
30 <div id="slider" class="mui-slider themes_tab mui-fullscreen" style="margin-top: 45px;">
31 <div id="sliderProgressBar" class="mui-slider-progress-bar mui-col-xs-6"></div>
32 <div class="mui-slider-group">
33 <div id="item1mobile" class="mui-slider-item mui-control-content">
34 <div id="scroll1" class="mui-scroll-wrapper">
35 <div class="mui-scroll" id="mui-table-view-tab1">
36 <ul class="mui-table-view">
37 <li class="mui-table-view-cell mui-tab1" style="padding: 0;">
38
39 </li>
40 </ul>
41 </div>
42 </div>
43 </div>
44 </div>
45 </div>
46
47 </div>
48
49 <script src="../../js/mui.min.js"></script>
50 <script src="../../js/mui.pullToRefresh.js"></script>
51 <script src="../../js/mui.pullToRefresh.material.js"></script>
52 <script src="../../js/jquery.min.js"></script>
53 <script src="../../js/template-web.js" type="text/javascript" charset="utf-8"></script>
54 <script src="../../js/utils.js" type="text/javascript" charset="utf-8"></script>
55 <script src="../../js/common.js" type="text/javascript" charset="utf-8"></script>
56 <script src="../../js/request.js" type="text/javascript" charset="utf-8"></script>
57
58 <script type="text/javascript">
59
60 //去搜索页面
61 function toSearchPage (){
62 document.activeElement.blur(); // 隐藏软键盘
63 var params = {};
64 params.route = '../pickingOff/pickingOffListUn';
65 params.id = 'pickingOffListUn';
66 params.auditStatus = 1;
67 params.selectTabs = 2;
68 params.module = 'pickingOff';
69 params.location = 'sub_list';
70 console.log(params)
71 common.openwin('../commonPages/searchPage',{ params: JSON.stringify(params) },false)
72 }
73
74 (function($,$JQ) {
75 //滚动加载
76 var deceleration = mui.os.ios?0.003:0.0009;
77 $('.mui-scroll-wrapper').scroll({
78 bounce: true,
79 indicators: true, //是否显示滚动条
80 deceleration:deceleration
81 });
82
83 // 模板加载
84 var utils = new Utils();
85 utils.appendModule('#list_tpl');
86 // 初始化数据
87 var params, pickingOrderNo,isMore = true ,
88 pickingStatus = undefined, // 拣货状态 0 待拣货 1 已拣货
89 pageNo = 1,//当前页
90 cout = 0,//数据总量
91 pageSize = 15,//每页加载量
92 resData = undefined ,
93 container = document.querySelector('.mui-tab1'),
94 globalPull =null,
95 baseList = [],
96 query={},
97 nullDataHtml = '<div class="mui-pull-bottom-tips"><div class="mui-pull-bottom-wrapper">'+
98 '<span class="mui-pull-loading">暂无数据</span></div></div>'
99
100 $.plusReady(function(){
101 var self = plus.webview.currentWebview();
102 let globalQuery = {};
103 params = JSON.parse(self.params);//获得参数
104 pickingOrderNo = params.pickingorderno;
105
106 window.addEventListener('pagefresh',function(event){
107 query = event.detail.query;
108 console.log(JSON.stringify(event.detail));
109 mui('.mui-scroll-wrapper').scroll().scrollTo(0,0,100);
110 mui(".mui-scroll").pullToRefresh().pullDownLoading();
111 });
112
113 // 触发刷新 搜索页面搜的值
114 window.addEventListener('sub_search',function(event){
115 console.log(JSON.stringify(event.detail))
116 query = globalQuery = JSON.parse(event.detail.searchParams);
117 mui('.mui-scroll-wrapper').scroll().scrollTo(0,0,100);
118 mui(".mui-scroll").pullToRefresh().pullDownLoading();
119 })
120
121 //
122 //绑定点击事件 - 进入详情页
123 $('#slider').on('tap','.toPage',function(){
124 let index = this.dataset.index;
125 let newData = {};
126 newData.id = this.dataset.id;
127 newData.hasPicked = false;
128 newData.pickingOrderNo = pickingOrderNo;
129 newData.pickingStatus = '1';
130 newData.query = globalQuery ;
131 // newData.pickingTime = resData.pickingTime;
132 // newData.pickingUserName = resData.pickingUserName
133 console.log(JSON.stringify(newData))
134 document.activeElement.blur();
135 common.openwin('pickingOffDetails',{ details: JSON.stringify(newData) },{
136 titleText: '详情'
137 })
138 })
139
140 var json ={
141 pickingOrderNo:pickingOrderNo,
142 pageNo:pageNo,
143 pageSize:15,
144 pickingStatus:'1'
145 }
146
147 var url = '/a/common/pickingorderdetail/detailList';
148 //循环初始化所有下拉刷新,上拉加载。
149 globalPull = $('.mui-scroll').pullToRefresh({
150 down: {
151 style:'circle',
152 contentdown : "下拉可以刷新",
153 contentover : "释放立即刷新",
154 contentrefresh : "正在刷新...",
155 callback: pulldownRefresh
156 },
157 up: {
158 contentrefresh : "正在加载...",//可选,正在加载状态时,上拉加载控件上显示的标题内容
159 contentnomore:'没有更多数据',
160 callback: pullupRefresh
161 }
162 });
163 mui(".mui-scroll").pullToRefresh().pullDownLoading();
164 function pulldownRefresh (){
165 console.log('下拉');
166 if(query.hisDrugCode){
167 console.log('有query')
168 json.hisDrugCode = query.hisDrugCode
169 $JQ('.mui-placeholder').hide();
170 $JQ('.mui-input-clear').val(query.hisDrugName);
171 }else{
172 console.log('二次刷新')
173 globalQuery={}
174 delete json.hisDrugCode
175 $JQ('.mui-input-clear').val('');
176 $JQ('.mui-placeholder').show();
177 }
178 query = {};
179 json.pageNo = 1 ;
180 mui.ajaxRequest(url,{
181 type: 'POST',
182 contentType: "application/x-www-form-urlencoded",
183 data:json,
184 showWaiting: true,
185 success: function(data){
186 if(data.code === 200){
187 toggle = false;
188 resData = data.data.list;
189 mui.each(resData,function(index,item){
190 item.type = '已拣货'
191 });
192 console.log(JSON.stringify(data.data.pageNo))
193 if(resData.length === 0 || (resData.length <= data.data.pageSize && data.data.pageNo === data.data.totalPage)){
194 isMore = false;
195 baseList=resData;
196 globalPull.endPullDownToRefresh();
197 document.querySelectorAll('.mui-pull-loading')[0].innerHTML = '没有更多数据';
198
199 }else{
200 isMore = true;
201 json.pageNo++;
202 baseList=resData;
203 globalPull.endPullDownToRefresh();
204 globalPull.refresh(true);
205 }
206 container.innerHTML = data.length === 0 ? nullDataHtml : template('picking_tpl',{list:baseList}) ;
207 }else{
208 mui.alert(data.msg)
209 }
210 },
211 error: function(xhr,type,errorThrown){
212 console.log(xhr.responseText)
213 }
214 });
215 }
216 function pullupRefresh (){
217 console.log('上拉')
218 console.log(JSON.stringify(json))
219 mui.ajaxRequest(url,{
220 type: 'POST',
221 contentType: "application/x-www-form-urlencoded",
222 data:json,
223 success: function(data){
224 console.log(JSON.stringify(data))
225 if(data.code === 200){
226 resData = data.data.list;
227 mui.each(resData,function(index,item){
228 item.type = '已拣货'
229 });
230
231 if(resData.length === 0 || (resData.length <= data.data.pageSize && data.data.pageNo === data.data.totalPage)){
232 //已无数据
233 globalPull.refresh(true);
234 console.log('上拉已无数据')
235 // baseList = baseList.concat(resData)
236 console.log('baseList',baseList.length)
237 console.log('resData',resData.length)
238 container.innerHTML = data.length === 0 ? nullDataHtml : template('picking_tpl',{list:baseList}) ;
239 globalPull.endPullUpToRefresh(true);
240 document.querySelectorAll('.mui-pull-loading')[0].innerHTML = '没有更多数据';
241
242 }else{
243
244 //还有数据
245 console.log('上拉还有数据')
246 baseList = baseList.concat(resData)
247 json.pageNo++;
248 console.log('baseList',baseList.length)
249 console.log('resData',resData.length)
250 container.innerHTML = data.length === 0 ? nullDataHtml : template('picking_tpl',{list:baseList}) ;
251 globalPull.endPullUpToRefresh(false);
252 }
253 }else{
254 mui.alert(data.msg)
255 }
256 },
257 error: function(xhr,type,errorThrown){
258 console.log(xhr.responseText)
259 }
260 });
261
262 }
263 });
264 })(mui,jQuery);
265 </script>
266 </body>
267
268 </html>
...\ No newline at end of file ...\ No newline at end of file
1 <!--验收 - 详情页 - wwb-->
2 <!doctype html>
3 <html>
4 <head>
5 <meta charset="UTF-8">
6 <title></title>
7 <link rel="import" href="./success_tpl.html" id="success"/>
8 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
9 <link href="../../css/mui.min.css" rel="stylesheet" />
10 <link href="../../css/themes.css" rel="stylesheet" />
11 <link href="../../css/index_view.css" rel="stylesheet" />
12 <style>
13 .result-footer{
14 text-align: center;
15 margin-top: 36px;
16 }
17 .btn{
18 display: inline-block;
19 width: 120px;
20 height: 36px;
21 line-height: 36px;
22 border-radius: 3px;
23 }
24 .keep{
25 color: #4cd964;
26 border: 1px solid #4cd964;
27 margin-right: 24px;
28 }
29 .keep:active{
30 color: #4cd964;
31 }
32 .finish{
33 color: #007aff;
34 border: 1px solid #007aff;
35 }
36 .finish:active{
37 color: #007aff;
38 }
39 </style>
40 </head>
41 <body>
42 <div class="mui-content">
43 <div id="result" class="am-result">
44
45 </div>
46 <div class="result-footer">
47 <a class="btn keep">继续<span class="actionName"></span></a>
48 <a class="btn finish">完成</a>
49 </div>
50
51 </div>
52 <script src="../../js/mui.min.js"></script>
53 <script src="../../js/template-web.js" type="text/javascript" charset="utf-8"></script>
54 <script src="../../js/common.js" type="text/javascript" charset="utf-8"></script>
55 <script src="../../js/utils.js" type="text/javascript" charset="utf-8"></script>
56 <script type="text/javascript">
57
58
59 (function($) {
60
61 $.init()
62 // 模板加载
63 $.ready(function(){
64
65 var utils = new Utils();
66 utils.appendModule('#success');
67 });
68 $.plusReady(function(){
69 var self = plus.webview.currentWebview();
70 var parmas = JSON.parse(self.parmas);
71 console.log(parmas,'parmas');
72 var data = {};
73 data.finishUrl = parmas.finishUrl;
74 data.keepUrl = parmas.keepUrl;
75 switch(parmas.resultType){
76 case 'acceptance':
77 data.resultType = '验收';
78 break;
79 case 'ground':
80 data.resultType = '上架';
81 break;
82 case 'picking':
83 data.resultType = '拣货';
84 break;
85 case 'check':
86 data.resultType = '盘点';
87 break;
88 case 'move':
89 data.resultType = '移动';
90 break;
91 default:
92 break;
93 }
94 document.querySelector('.actionName').innerText = data.resultType;
95 var html = template('success_tpl', data);
96 document.getElementById('result').innerHTML = html;
97
98 // 继续操作
99 $('.result-footer').on('click','.keep',function(){
100 var page = plus.webview.getWebviewById(parmas.keepUrl);
101 mui.fire(page,'pagefresh',{ params: JSON.stringify(parmas.itemData),selectTab: '1' });
102 common.gotowin(parmas.keepUrl,{ params: JSON.stringify(parmas.itemData) });
103 // plus.webview.currentWebview().close();
104
105 });
106
107
108 // 完成操作
109 $('.result-footer').on('tap','.finish',function(){
110 var page = plus.webview.getWebviewById(parmas.finishUrl);
111 console.log(page);
112 mui.fire(page,'pagefresh',{ hasAcceptance: true });
113 common.gotowin(parmas.finishUrl, {}, false)
114 })
115
116 })
117 })(mui);
118
119 </script>
120 </body>
121
122 </html>
...\ No newline at end of file ...\ No newline at end of file
1 <script type="text/html" id='success_tpl'>
2 <div style="margin-top:15%;">
3 <div>
4 <img src="../../assest/success.svg" width="128" height="128"/>
5 </div>
6 <div class="am-result-title">
7 <div><span>{{ resultType }}</span>完成</div>
8 </div>
9 </div>
10 </script>
...\ No newline at end of file ...\ No newline at end of file
1 <!--库存查询 - 详情页 - yuweI-->
2 <!doctype html>
3 <html>
4 <head>
5 <meta charset="UTF-8">
6 <title></title>
7 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
8 <link href="../../css/mui.min.css" rel="stylesheet" />
9 <link href="../../css/themes.css" rel="stylesheet" />
10 <link rel="import" href="./details_view.html" id="card_view"/>
11 </head>
12
13 <body>
14
15 <div class="mui-content detailRow">
16 <form class="mui-input-group" id="detailContent" style="background:none;">
17 <ul class="mui-table-view" style="margin-bottom:12px;">
18 <li class="mui-table-view-cell mui-collapse">
19 <a class="mui-navigate-right" href="#">产品信息</a>
20 <div class="mui-collapse-content">
21
22 </div>
23 </li>
24 </ul>
25
26 </form>
27 </div>
28
29 <script src="../../js/mui.js"></script>
30 <script src="../../js/template-web.js" type="text/javascript" charset="utf-8"></script>
31 <script src="../../js/utils.js" type="text/javascript" charset="utf-8"></script>
32 <script src="../../js/request.js" type="text/javascript" charset="utf-8"></script>
33 <script type="text/javascript">
34 (function($) {
35
36 var utils = new Utils();
37 utils.appendModule('#card_view');
38
39 $.plusReady(function(){
40
41 var params, hisDrugCode = undefined, drugCode = undefined;
42 var self = plus.webview.currentWebview();
43 params = JSON.parse(self.params);//获得参数
44 hisDrugCode = params.hisdrugcode;
45 drugCode = params.drugcode;
46 var baseUrl = '/a/StoreDetail/getRoomRepertoryDetail';
47 var tableUrl = '/a/StoreDetail/getRoomRepertoryDetailList';
48 var renderData = { };
49 plus.nativeUI.showWaiting();
50 genDetailData(baseUrl,hisDrugCode)
51
52
53 /*
54 获取列表数据
55 * */
56
57 function genDetailData(baseUrl,hisDrugCode){
58 // 详情 数据
59 mui.ajaxRequest(baseUrl,{
60 type: 'POST',
61 data: {
62 hisDrugCode: hisDrugCode
63 },
64 success: function(data){
65 if(data.code === 200){
66 var list = [];
67 list.push(data.data);
68 renderData.list = list;
69 genTableData(tableUrl,drugCode);
70 }else{
71 mui.alert(data.msg)
72 }
73 },
74 error: function(xhr,type,errorThrown){
75 console.log(xhr.responseText)
76 }
77 });
78 }
79
80 function genTableData(tableUrl,drugCode){
81 // 列表数据
82
83 mui.ajaxRequest(tableUrl,{
84 type: 'post',
85 data: {
86 drugCode: drugCode
87 },
88 success: function(data){
89 if(data.code === 200){
90 plus.nativeUI.closeWaiting();
91 var tablist = data.data.list;
92 renderData.tablist = tablist;
93 var html = template('deitail_view', renderData);
94 document.getElementById('detailContent').innerHTML = html;
95 }else{
96 mui.alert(data.msg)
97 }
98 },
99 error: function(xhr,type,errorThrown){
100 console.log(xhr.responseText)
101 }
102 });
103 }
104 })
105 })(mui);
106
107 </script>
108 </body>
109
110 </html>
...\ No newline at end of file ...\ No newline at end of file
1
2 <script type="text/html" id='deitail_view'>
3 <div style="margin-top:10px;">
4 {{ each list value i}}
5 <ul class="mui-table-view" style="margin-bottom:12px;">
6 <li class="mui-table-view-cell mui-collapse mui-active">
7 <a class="mui-navigate-right" href="#">产品信息</a>
8 <div class="mui-collapse-content">
9 <div class="mui-input-row">
10 <label>通用名</label>
11 <p class="detailRow_content">{{ value.genericName }}</p>
12 </div>
13 <div class="mui-input-row">
14 <label>商品名</label>
15 <p class="detailRow_content">{{value.tradeName}}</p>
16 </div>
17 <div class="mui-input-row">
18 <label>规格</label>
19 <p class="detailRow_content">{{value.specification}}</p>
20 </div>
21 <div class="mui-input-row">
22 <label>剂型</label>
23 <p class="detailRow_content">{{value.dosageDesc}}</p>
24 </div>
25 <div class="mui-input-row">
26 <label>生产厂家</label>
27 <p class="detailRow_content">{{value.manufactureName}}</p>
28 </div>
29 <div class="mui-input-row">
30 <label>批准文号</label>
31 <p class="detailRow_content">{{value.approvalNo}}</p>
32 </div>
33 <div class="mui-input-row">
34 <label>包装规格</label>
35 <p class="detailRow_content">{{value.packageSpecification}}</p>
36 </div>
37 </div>
38 </li>
39 </ul>
40
41 <ul class="mui-table-view" style="margin-top:12px;">
42 {{ each tablist itemValue subIndex}}
43 <li class="mui-table-view-cell mui-collapse" data-id="{{ itemValue.id }}">
44
45 <a class="mui-navigate-right" href="#" style="display: flex;">
46 <label class="detailRow_label head_minheight">货位</label>
47 <p class="detailRow_content head_minheight">{{ itemValue.storeLocName }}</p>
48 <span class="detailRow_right theme_font_danger head_minheight">{{ itemValue.usableQuantity }}</span>
49 </a>
50 <div class="mui-collapse-content">
51 <div class="mui-input-row">
52 <label>货位类型</label>
53 <p class="detailRow_content">{{itemValue.storeType}}</p>
54 </div>
55 <div class="mui-input-row">
56 <label>数量</label>
57 <p class="detailRow_content">{{itemValue.usableQuantity}}</p>
58 </div>
59 <div class="mui-input-row">
60 <label>单位</label>
61 <p class="detailRow_content">{{itemValue.unit}}</p>
62 </div>
63 <div class="mui-input-row">
64 <label>供应商</label>
65 <p class="detailRow_content">{{itemValue.supplierName}}</p>
66 </div>
67 <div class="mui-input-row">
68 <label>生产批号</label>
69 <p class="detailRow_content">{{itemValue.lot}}</p>
70 </div>
71 <div class="mui-input-row">
72 <label>生产日期</label>
73 <p class="detailRow_content">{{itemValue.productDate}}</p>
74 </div>
75 <div class="mui-input-row">
76 <label>有效期至</label>
77 <p class="detailRow_content">{{itemValue.validEndDate}}</p>
78 </div>
79 </div>
80 </li>
81 {{/each}}
82 </ul>
83 {{/each}}
84 </div>
85 </script>
...\ No newline at end of file ...\ No newline at end of file
1 <!--库存查询 - 列表页 - yuweI-->
2 <!doctype html>
3 <html>
4
5 <head>
6 <meta charset="UTF-8">
7 <title></title>
8 <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
9 <link href="../../css/mui.min.css" rel="stylesheet" />
10 <link href="../../css/themes.css" rel="stylesheet" />
11 <link href="../../css/index_view.css" rel="stylesheet" />
12 <link rel="import" href="../../tpl/stockQuery_card.html" id="card_view"/>
13 </head>
14
15 <body>
16 <header class="mui-bar mui-bar-nav themes_bg_color">
17 <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left">
18 <label class="mui-pull-right theme_back_font">返回</label>
19 </a>
20 <h1 class="mui-title themes_title">库存查询</h1>
21 </header>
22 <div class="mui-content">
23 <div class="mui-input-row mui-search search_head" onclick="toSearchPage()">
24 <input type="search" class="mui-input-clear" id="search" placeholder="通用名/商品名" readonly="readonly" >
25 </div>
26 <div id="slider" class="mui-slider themes_tab mui-fullscreen" style="top: 102px;">
27 <!--<div id="sliderSegmentedControl" class="mui-slider-indicator mui-segmented-control mui-segmented-control-inverted">
28 <a class="mui-control-item themes_font_color_tab" href="#item1mobile">全部</a>
29 <a class="mui-control-item themes_font_color_tab item2mobile" href="#item2mobile">更多筛选</a>
30 </div>-->
31 <div id="sliderProgressBar" class="mui-slider-progress-bar mui-col-xs-6"></div>
32
33 <div class="mui-slider-group">
34 <div id="item1mobile" class="mui-slider-item mui-control-content mui-active">
35 <div id="scroll1" class="mui-scroll-wrapper">
36 <div class="mui-scroll" id='mui-table-view-tab1'>
37 <ul class="mui-table-view">
38 <li class="mui-table-view-cell mui-tab1" style="padding: 0;"></li>
39 </ul>
40 </div>
41 </div>
42 </div>
43 <div class="moreCondition">
44 <ul class="mui-table-view">
45 <li class="mui-table-view-cell" data-search='nearEffect'>近效期(三个月)</li>
46 <li class="mui-table-view-cell" data-search= 'lowStock'>低库存</li>
47 </ul>
48 </div>
49 </div>
50 </div>
51
52 </div>
53
54 <script src="../../js/mui.js"></script>
55 <script src="../../js/mui.pullToRefresh.js"></script>
56 <script src="../../js/mui.pullToRefresh.material.js"></script>
57 <script src="../../js/template-web.js" type="text/javascript" charset="utf-8"></script>
58 <script src="../../js/utils.js" type="text/javascript" charset="utf-8"></script>
59 <script src="../../js/common.js" type="text/javascript" charset="utf-8"></script>
60 <script src="../../js/request.js" type="text/javascript" charset="utf-8"></script>
61 <script type="text/javascript">
62
63
64 //去搜索页面
65 function toSearchPage (){
66 var params = {};
67 params.module = 'stock';
68 params.location = 'main_list';
69 params.route = '../stockQuery/index';
70 common.openwin('../commonPages/searchPage',{ params: JSON.stringify(params) },false)
71 }
72
73 (function($) {
74 $.init({
75 beforeback:function(){
76 var list = plus.webview.currentWebview().opener();
77 mui.fire(list, 'refresh',{ getCountFlag: true });
78 return true;
79 }
80 });
81
82
83 var deceleration = mui.os.ios?0.003:0.0009;
84 $('.mui-scroll-wrapper').scroll({
85 bounce: true,
86 indicators: true, //是否显示滚动条
87 deceleration:deceleration
88 });
89
90 var utils = new Utils();
91 utils.appendModule('#card_view');
92
93 var url = '/a/StoreDetail/list';
94 var page = 1, totalPage = undefined, pageSize = 30, isMore = true, query = {};
95
96 /* 渲染模板 */
97 function template(data, insertType){
98 utils.innerTplHtml('stock', '.mui-tab1', data, insertType);
99 }
100 /*
101 下拉刷新
102 * */
103 function pulldownRefresh(){
104 var self = this;
105 page = 1;
106 var postData = {
107 pageNo: page,
108 pageSize: pageSize
109 };
110 if(query.bigDrugCode){
111 postData.hisDrugCodeList = [ query.bigDrugCode ]
112 }
113 query = {};
114 mui.ajaxRequest(url,{
115 type: 'POST',
116 data: postData,
117 contentType: "application/json",
118 success: function(data){
119 var resData = data.data;
120 totalPage = data.totalPage;
121 if(resData.pageNo >= resData.totalPage){
122 document.querySelector('.mui-pull-loading').innerHTML = '没有更多数据';
123 isMore = false;
124 self.endPullDownToRefresh(true);
125 }else{
126 isMore = true;
127 self.endPullDownToRefresh(false);
128 self.refresh(true);
129 }
130 return template(resData, false)
131 },
132 error: function(xhr,type,errorThrown){
133 console.log(xhr.responseText)
134 }
135 });
136 }
137
138 /*
139
140 * 上拉加载更多
141 * */
142 function pullupRefresh(){
143 var self = this;
144 console.log(isMore,'isMore')
145 if(isMore){
146 page++;
147 mui.ajaxRequest(url,{
148 type: 'POST',
149 data:{
150 pageNo: page,
151 pageSize: pageSize
152 },
153 contentType: "application/json",
154 success: function(data){
155 var resData = data.data;
156 if(resData.pageNo === resData.totalPage){
157 isMore = false;
158 self.endPullUpToRefresh(true);
159 }else{
160 isMore = true;
161 self.endPullUpToRefresh(false);
162 self.refresh(true);
163 }
164 return template(resData, true)
165
166 },
167 error: function(xhr,type,errorThrown){
168 console.log(xhr.responseText)
169 }
170 });
171 }else{
172 document.querySelector('.mui-pull-loading').innerHTML = '没有更多数据';
173 self.endPullUpToRefresh(true);
174 }
175
176 }
177
178 $.plusReady(function(){
179
180 // 触发刷新 搜索页面搜的值
181 window.addEventListener('search',function(event){
182 console.log(event.detail)
183 query.bigDrugCode = JSON.parse(event.detail.searchParams).bigDrugCode;
184 query.ctmmParam = JSON.parse(event.detail.searchParams).ctmmParam;
185 document.querySelector('.mui-input-clear').placeholder = '';
186 document.querySelector('.mui-placeholder').style.display = 'none';
187 document.querySelector('.mui-input-clear').value = query.ctmmParam;
188 mui(".mui-scroll").pullToRefresh().pullDownLoading();
189 })
190
191 //循环初始化所有下拉刷新,上拉加载。
192 $.each(document.querySelectorAll('.mui-scroll'), function(index, pullRefreshEl) {
193 $(pullRefreshEl).pullToRefresh({
194 down: {
195 style:'circle',
196 contentdown : "下拉可以刷新",
197 contentover : "释放立即刷新",
198 contentrefresh : "正在刷新...",
199 callback: pulldownRefresh
200 },
201 up: {
202 contentrefresh : "正在加载...",//可选,正在加载状态时,上拉加载控件上显示的标题内容
203 contentnomore:'没有更多数据',
204 callback: pullupRefresh
205 }
206 });
207 });
208 mui(".mui-scroll").pullToRefresh().pullDownLoading();
209
210 //tab页切的点击事件
211 // var sliderSegmentedControl = document.getElementById('sliderSegmentedControl');
212 // $('.mui-input-group').on('change', 'input', function() {
213 // if (this.checked) {
214 // sliderSegmentedControl.className = 'mui-slider-indicator mui-segmented-control mui-segmented-control-inverted mui-segmented-control-' + this.value;
215 // //force repaint
216 // sliderProgressBar.setAttribute('style', sliderProgressBar.getAttribute('style'));
217 // }
218 // });
219 // 更多筛选
220 // $('#sliderSegmentedControl').on('tap','.item2mobile',function(){
221 // var moreCondition = document.querySelector('.moreCondition');
222 // moreCondition.style.display = moreCondition.style.display === 'none'? 'block':'none';
223 // });
224
225 // 更多筛选条件查询
226 // $('.moreCondition').on('tap','.mui-table-view-cell',function(){
227 // this.parentNode.parentNode.style.display = 'none';
228 // console.log(this.dataset.search)
229 // })
230
231 //绑定点击事件 - 进入详情页
232
233 $('#slider').on('tap','.am-card',function(){
234 let itemData = this.dataset;
235 console.log(JSON.stringify(itemData))
236 document.activeElement.blur();
237 common.openwin('details',{ params: JSON.stringify(itemData) },{
238 titleText:'详情'
239 })
240 });
241 });
242
243 })(mui);
244 </script>
245 </body>
246
247 </html>
...\ No newline at end of file ...\ No newline at end of file
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
No preview for this file type
No preview for this file type
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!